memcached的1.2.4及以上增加了CAS(Check and Set)协议,对于同一key的多进行程的并发处理问题。这种情况其实根数据库很像,如果同时有几个进程对同一个表的同一数据进行更新的话,那会不会打架呢,哈哈。数据库里面可以锁定整张表,也可以锁定表里面一 行的功能,其实memcached加入的CAS根这个差不多。
php的扩展memcache,不支持cas,所以我们要装memcached扩展,memcached扩展是基于libmemcached,所以要先安装libmemcached
tar
zxvf libmemcached-0.42.tar.gz
cd libmemcached-0.42
./configure
--prefix=/usr/local/libmemcached --with-memcached --enable-sasl
make && make install
tar
zxvf memcached-1.0.2.tar.gz
cd memcached-1.0.2
/usr/local/php/bin/phpize
./configure --enable-memcached
--with-php-config=/usr/local/php/bin/php-config
--with-libmemcached-dir=/usr/local/libmemcached --enable-memcached-sasl
make
&& make install
vi
/usr/local/php/lib/php.ini
加上extension=memcached.so重起一下服务就可以了。
------------------------------------------------------------
【centosphp安装memcached扩展支持sasl】
【http://www.2cto.com/os/201411/353283.html】
1.安装sasl
1 2 |
|
2.下载libmemcached
1 |
|
3,编译安装
1 2 3 4 5 |
|
4.安装memcached安装
1 2 3 |
|
1 |
|
phpize./configure
--with-php-config=php-config目录
--with-libmemcached-dir=/usr/local/libmemcached/ --enable-memcached-sasl
1 |
1 |
|
1 |
|
5.修改对应的配置
增加
1 |
|
1 2 |
|
最后 重启web服务器 nginx 或者
apache
1 2 3 |
|
1 |
|