这篇文章主要介绍了腾讯CMEM的PHP扩展编译安装方法,较为详细的分析了CMEM的功能、作用及安装使用技巧,具有一定参考借鉴价值,需要的朋友可以参考下
本文实例讲述了腾讯CMEM的PHP扩展编译安装方法。分享给大家供大家参考。具体如下:
CMEM是什么?
CMEM全称为Cloud Memory,是腾讯提供的高性能内存级持久化存储服务,适用于数据量小、访问量高、key-value存储的场景。
CMEM基于一个存储键/值对的hashmap,数据使用内存存储,并保证数据的持久性。
CMEM PHP Extension是什么?
CMEM基于标准的Memcached协议以及接口,只是将数据获取接口增加返回值设定。
Memcached的Get协议没有设计返回码,所以Memcached API返回NO_DATA时,有可能是网络原因造成的,不能完全信任。 使用如下流程将是非常危险的,将造成用户数据初始化:
- if(NO_DATA) {
- InitData();
- }
为解决上述问题,CMEM提供了Memcahced文本扩展协议,增加两个扩展的命令get_ext, gets_ext,使客户端可以根据返回码判断数据是否存在。 这样可以避免网络和设备故障时get不到数据而导致用户数据被误初始化。
CMEM编译与安装
- # 下载CMEM
- cd /home/src
- wget http://cmem.googlecode.com/files/cmem-2.2.6.tar.gz
- # 解压
- tar zxvf cmem-2.2.6.tar.gz
- cd cmem-2.2.6
- # 编译
- /usr/local/webserver/php/bin/phpize
- ./configure --with-php-config=/usr/local/webserver/php/bin/php-config
- make
- # 安装PHP扩展
- cp modules/cmem.so /usr/local/webserver/php/lib/php/extensions/no-debug-non-zts-20090626/
- # 配置php.ini
- # 加入以下内容
- # --------------------------------------------------
- extension = "cmem.so"
- # --------------------------------------------------
- # 测试
- # 新建cmemtest.php
- cat > /tmp/cmemtest.php
- # 代码为
- # --------------------------------------------------
- <?php
- if(!class_exists('CMEM')) echo "CMEM NOT FOUND!/n";
- else echo "CMEM IS OK/n";
- ?>
- # --------------------------------------------------
- # 执行测试文件
- /usr/local/webserver/php/bin/php -f /tmp/cmemtest.php
希望本文所述对大家的php程序设计有所帮助。
新闻热点
疑难解答