Ubuntu 12.04 LTS下memcache的安装使用(转)
转自:http://dhq.me/ubuntu-install-use-memcache
Memcache 是一个免费、开源、高性能的分布式内存对象缓存系统。它把WEB应用程序所需的数据以Key-Value的形式存储在内存中,提高了WEB应用程序数据的读取速度,减轻了数据库的负载,从而加速动态WEB应用程序的响应速度。
安装memcached服务端:
apt-get installmemcached
启动memcache:
memcached -d -m 50 -p 11211 -u memcache -l 127.0.0.1
关闭memcache:
kill-9 memcache的进程ID
常用memcache启动参数介绍:
-d:以daemon的方式在后台启动运行一个守护进程 -m:分配给Memcache使用的最大内存数量,单位是MB,默认是64MB -u:设定运行Memcache的用户(memcache默认不允许以root用户登录) -l:监听的服务器IP地址 -p:设置Memcache监听的TCP端口,默认是11211(p为小写) -c:设置最大并发连接数,默认是1024 -P:设置保存Memcache的pid文件路径(P为大写) -h:显示帮助
安装完毕后,可以用这个命令来检测memcache是否正常启动,如果看到如上启动memcache的指令,则安装成功:
psaux | grepmemcache
安装PHP Memecache 客户端:
apt-get installphp5-memcache
执行完后重启nginx和fastcgi服务,phpinfo()输出能看见memcache扩展,则PHP Memcache客户端安装成功。
修改PHP配置文件php.ini,用memcache存储session会话,加快数据之间处理速度:
session.save_handler = memcache session.save_path = "tcp://127.0.0.1:11211"
也可以修改 .htaccess 文件:
php_value session.save_handler "memcache" php_value session.save_path "tcp://127.0.0.1:11211"
或者在某个应用中初始设置:
ini_set("session.save_handler", "memcache"); ini_set("session.save_path", "tcp://127.0.0.1:11211");
使用多个 Memcached Server 时要用逗号","隔开,并且可以带额外的参数"persistent"、"weight"、"timeout"、"retry_interval" 等,例如:
tcp://host1:port1?persistent=1&weight=2,tcp://host2:port2
一个简单的php memcahche使用例子:
//创建Memcache对象 $mem = new Memcache(); //连接Memcache服务器 $mem->connect('127.0.0.1', 11211); $val = 'This is a memcache test!'; $key = md5($val); //判断是否获取到指定key的数据,没缓存则增加一条过期时间为300秒的数据 if ( $data = $mem->get($key) ) { echo 'from cache data: ' . $data; } else { $mem->set($key, $val, 0, 300); echo 'new set data: ' . $val; }
更多的使用介绍可以查看PHP官方的memcache文档
浙公网安备 33010602011771号