Memcache
首先认识下Memcache是干嘛用的。
Memcache是danga.com的一个项目,最早是为 LiveJournal 服务的,目前全世界不少人使用这个缓存项目来构建自己大负载的网站,来分担数据库的压力。
Memcache官方网站:http://memcached.org/
安装
首先:sudo apt-get install memcached
然后就可以直接运行了。
/usr/bin/memcached -d -u root -l 127.0.0.1 -p 11211
下面是参数的一些解释,有需求的可以按照参数来修改。
-p TCP port number to listen on (default: 11211)
-U UDP port number to listen on (default: 11211, 0 is off)
-s UNIX socket path to listen on (disables network support)
-a access mask for UNIX socket, in octal (default: 0700)
-l interface to listen on (default: INADDR_ANY, all addresses)
-d run as a daemon
-r maximize core file limit
-u assume identity of (only when run as root)
-m max memory to use for items in megabytes (default: 64 MB)
-M return error on memory exhausted (rather than removing items)
-c max simultaneous connections (default: 1024)
安装php扩展
//sudo apt-get install memcache 此命令不影响php扩展
sudo apt-get install php5-memcached
以上两条命令可以的话,都运行一下。
然后修改php.ini文件。
我的是Ubuntu 14.04
,这个文件在:
/etc/php5/apache2/php.ini
修改里面的:
extension_dir = "/usr/lib/php5/20121212" //这个注释取消掉并且把路径修改为你memcached.so文件的路径
extension = "memcached.so" //加上这行
然后看下/etc/php5/mods-available
里的memcached.ini文件里的配置是不是取消注释状态。
然后重启apache服务就可以了。
sudo apachectl restart
测试
创建一个php文件:
<?php
phpinfo();
?>
看看里面有没有memcache的服务。
使用
Memcache::connect – 打开一个到Memcache的连接
Memcache::pconnect – 打开一个到Memcache的长连接
Memcache::close – 关闭一个Memcache的连接
Memcache::set – 保存数据到Memcache服务器上
Memcache::get – 提取一个保存在Memcache服务器上的数据
Memcache::replace – 替换一个已经存在Memcache服务器上的项目(功能类似Memcache::set)
Memcache::delete – 从Memcache服务器上删除一个保存的项目
Memcache::flush – 刷新所有Memcache服务器上保存的项目(类似于删除所有的保存的项目)
Memcache::getStats – 获取当前Memcache服务器运行的状态
例子
<?php
$mc = new Memcache;
$mc->connect('localhost',11211);
$version = $mc->getVersion();
$mc->set('username','value');
echo $version;
$name = $mc->get('username');
echo $name;
?>
代码如上,如果能正常输出,说明正确。