騰訊CMEM的PHP擴展編譯安裝方法
本文實例講述了騰訊CMEM的PHP擴展編譯安裝方法。分享給大家供大家參考。具體如下:
CMEM是什么?
CMEM全稱為Cloud Memory,是騰訊提供的高性能內(nèi)存級持久化存儲服務,適用于數(shù)據(jù)量小、訪問量高、key-value存儲的場景。
CMEM基于一個存儲鍵/值對的hashmap,數(shù)據(jù)使用內(nèi)存存儲,并保證數(shù)據(jù)的持久性。
CMEM PHP Extension是什么?
CMEM基于標準的Memcached協(xié)議以及接口,只是將數(shù)據(jù)獲取接口增加返回值設定。
Memcached的Get協(xié)議沒有設計返回碼,所以Memcached API返回NO_DATA時,有可能是網(wǎng)絡原因造成的,不能完全信任。 使用如下流程將是非常危險的,將造成用戶數(shù)據(jù)初始化:
if(NO_DATA) {
InitData();
}
為解決上述問題,CMEM提供了Memcahced文本擴展協(xié)議,增加兩個擴展的命令get_ext, gets_ext,使客戶端可以根據(jù)返回碼判斷數(shù)據(jù)是否存在。 這樣可以避免網(wǎng)絡和設備故障時get不到數(shù)據(jù)而導致用戶數(shù)據(jù)被誤初始化。
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
# 加入以下內(nèi)容
# --------------------------------------------------
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";
?>
# --------------------------------------------------
# 執(zhí)行測試文件
/usr/local/webserver/php/bin/php -f /tmp/cmemtest.php
希望本文所述對大家的php程序設計有所幫助。
相關文章
PHP加密函數(shù) Javascript/Js 解密函數(shù)
php加密,js解密,貌似沒什么意義,主要是key在js中會被看到,不過在某些地方可能會用到2013-09-09
PHP用mysql_insert_id()函數(shù)獲得剛插入數(shù)據(jù)或當前發(fā)布文章的ID
向mysql 插入數(shù)據(jù)時,很多時候我們想知道剛剛插入數(shù)據(jù)的id,這對我們很有用。下面這篇文章就詳細給大家介紹了利用mysql_insert_id()函數(shù)獲得剛插入數(shù)據(jù)或當前發(fā)布文章的ID,有需要的朋友們可以參考借鑒,感興趣的朋友們下面來一起看看吧。2016-11-11

