日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術(shù)文章
文章詳情頁

PHP高性能分布式內(nèi)存對象緩存系統(tǒng)擴(kuò)展Memcached的安裝及使用

瀏覽:279日期:2022-09-15 18:01:40
一、簡介及安裝

memcached是一個(gè)高性能分布式的內(nèi)存對象緩存系統(tǒng), 通常被用于降低數(shù)據(jù)庫加載壓力以提高動(dòng)態(tài)web應(yīng)用的響應(yīng)速度。

此擴(kuò)展使用了libmemcached庫提供的api與memcached服務(wù)端進(jìn)行交互。它還提供了一個(gè)session處理器(memcached)。

關(guān)于memcached的安裝,可參考這篇文章:Ubuntu中memcached的安裝和配置。

在安裝php擴(kuò)展memcached之前,需要先安裝libmemcached,libmemcached是memcached的C/C++本地客戶端庫。

安裝libmemcached之前,還要先安裝libcloog-ppl0,否則編譯安裝過程中會(huì)出錯(cuò):

sudo apt-get install libcloog-ppl0

然后從這里http://libmemcached.org/libMemcached.html下載所需的libmemcached源碼安裝包,解壓到指定目錄,進(jìn)入該目錄,然后執(zhí)行以下指令:

./configure --prefix=/usr/local/libmemcachedmakesudo make install

然后就可以進(jìn)行php的memcached擴(kuò)展的安裝了,從這里下載所需的源碼安裝包:http://pecl.php.net/package/memcached,解壓到指定目錄,進(jìn)入該目錄,然后執(zhí)行以下指令:

phpize./configure --with-php-config=/usr/local/php/bin/php-config --with-libmemcached-dir=/usr/local/libmemcachedmakesudo make install

在安裝過程中可能會(huì)報(bào)錯(cuò):

未知類型名稱:memcached_server_instance_st

而導(dǎo)致make失敗,解決辦法如下:

在memcached擴(kuò)展解壓目錄下找到這個(gè)文件:php_libmemcached_compat.h,然后在其中添加下面這行

typedef const struct memcached_server_st *memcached_server_instance_st;

再次make,就OK了。

安裝成功后,在php.ini中添加extension=memcacached,然后重啟apache,查看phpinfo,看到如下部分

PHP高性能分布式內(nèi)存對象緩存系統(tǒng)擴(kuò)展Memcached的安裝及使用

證明安裝成功。

二、超時(shí)時(shí)間

一些存儲命令在發(fā)送時(shí)會(huì)包含一個(gè)失效值(與一個(gè)元素或一個(gè)客戶端操作請求相關(guān))到服務(wù)端。所有這類用法,實(shí)際發(fā)送的值可以 是一個(gè)Unix時(shí)間戳(自1970年1月1日起至失效時(shí)間的整型秒數(shù)),或者是一個(gè)從現(xiàn)在算起的以秒為單位的數(shù)字。對于后一種情況,這個(gè) 秒數(shù)不能超過60×60×24×30(30天時(shí)間的秒數(shù));如果失效的值大于這個(gè)值, 服務(wù)端會(huì)將其作為一個(gè)真實(shí)的Unix時(shí)間戳來處理而不是 自當(dāng)前時(shí)間的偏移。

如果失效值被設(shè)置為0(默認(rèn)),此元素永不過期(但是它可能由于服務(wù)端為了給其他新的元素分配空間而被刪除)。

三、回調(diào)1.結(jié)果回調(diào)

Result callbacks方式在通過 Memcached::getDelayed()或Memcached::getDelayedBykey()方法獲取元素后,為結(jié)果集中每個(gè)元素調(diào)用一次。 回調(diào)函數(shù)可以接收到一個(gè)Memcached對象合一個(gè)數(shù)組描述的元素信息,此回調(diào)函數(shù)不需要返回任何信息。

Example #1 結(jié)果回調(diào)示例

<?php $m = new Memcached(); $m->addServer(’localhost’, 11211); $items = array(’key1’ => ’value1’,’key2’ => ’value2’,’key3’ => ’value3’ ); $m->setMulti($items); $m->getDelayed(array(’key1’, ’key3’), true, ’result_cb’); function result_cb($memc, $item) {var_dump($item); }?>

以上例程的輸出類似于:

array(3) { ['key']=> string(4) 'key1' ['value']=> string(6) 'value1' ['cas']=> float(49)}array(3) { ['key']=> string(4) 'key3' ['value']=> string(6) 'value3' ['cas']=> float(50)}2.通讀緩存回調(diào)

通讀緩存回調(diào)在一個(gè)元素沒有從服務(wù)端檢索到的時(shí)候被調(diào)用。這個(gè)回調(diào)函數(shù)會(huì)接收到Memcached對象,請求的key以及 一個(gè)引用方式傳遞的值變量等三個(gè)參數(shù)。此回調(diào)函數(shù)負(fù)責(zé)通過返回true或false來決定在key沒有值時(shí)設(shè)置一個(gè)默認(rèn)值。 如果回調(diào)返回true,Memcached會(huì)存儲'傳出參數(shù)'(引用傳遞的值變量)存儲的值到memcached服務(wù)端并將其返回到原來 的調(diào)用函數(shù)中。僅僅 Memcached::get()和 Memcached::getByKey() 支持這類回調(diào),因?yàn)镸emcache協(xié)議不支持在請求多個(gè)key時(shí)提供未檢索到key的信息。

Example #2 通讀回調(diào)示例

<?php $m = new Memcached(); $m->addServer(’localhost’, 11211); $profile_info = $m->get(’user:’.$user_id, ’user_info_cb’); function user_info_cb($memc, $key, &$value) {$user_id = substr($key, 5);/* 從數(shù)據(jù)庫讀取個(gè)人信息 *//* ... */$value = $profile_info;return true; }?>四、Sessions支持

memcached提供了一個(gè)自定義的session處理器可以被用于存儲用戶session數(shù)據(jù)到memcached服務(wù)端。 一個(gè)完全獨(dú)立的memcached實(shí)例將會(huì)在內(nèi)部使用,因此如果需要您可以設(shè)置一個(gè)不同的服務(wù)器池。session的 key被存儲在前綴memc.sess.key.之下,因此, 如果你對session和通常的緩存使用了 同樣的服務(wù)器池,請注意這一點(diǎn)。 譯注:另外一個(gè)session和通常緩存分離的原因是當(dāng)通常的緩存占滿了memcached服務(wù)端后,可能會(huì)導(dǎo)致你的session被 從緩存中踢除,導(dǎo)致用戶莫名的掉線。

session.save_handler 設(shè)置為memcached開啟memcached的session處理器。session.save_path定義一個(gè)逗號分隔的hostname:port樣式的session緩存服務(wù)器池,例如: 'sess1:11211, sess2:11211'.五、Memcached類

表征到memcached服務(wù)集群的連接。

Memcached::add — 向一個(gè)新的key下面增加一個(gè)元素Memcached::addByKey — 在指定服務(wù)器上的一個(gè)新的key下增加一個(gè)元素Memcached::addServer — 向服務(wù)器池中增加一個(gè)服務(wù)器Memcached::addServers — 向服務(wù)器池中增加多臺服務(wù)器Memcached::append — 向已存在元素后追加數(shù)據(jù)Memcached::appendByKey — 向指定服務(wù)器上已存在元素后追加數(shù)據(jù)Memcached::cas — 比較并交換值Memcached::casByKey — 在指定服務(wù)器上比較并交換值Memcached::__construct — 創(chuàng)建一個(gè)Memcached實(shí)例Memcached::decrement — 減小數(shù)值元素的值Memcached::decrementByKey — Decrement numeric item’s value, stored on a specific serverMemcached::delete — 刪除一個(gè)元素Memcached::deleteByKey — 從指定的服務(wù)器刪除一個(gè)元素Memcached::deleteMulti — Delete multiple itemsMemcached::deleteMultiByKey — Delete multiple items from a specific serverMemcached::fetch — 抓取下一個(gè)結(jié)果Memcached::fetchAll — 抓取所有剩余的結(jié)果Memcached::flush — 作廢緩存中的所有元素Memcached::get — 檢索一個(gè)元素Memcached::getAllKeys — Gets the keys stored on all the serversMemcached::getByKey — 從特定的服務(wù)器檢索元素Memcached::getDelayed — 請求多個(gè)元素Memcached::getDelayedByKey — 從指定的服務(wù)器上請求多個(gè)元素Memcached::getMulti — 檢索多個(gè)元素Memcached::getMultiByKey — 從特定服務(wù)器檢索多個(gè)元素Memcached::getOption — 獲取Memcached的選項(xiàng)值Memcached::getResultCode — 返回最后一次操作的結(jié)果代碼Memcached::getResultMessage — 返回最后一次操作的結(jié)果描述消息Memcached::getServerByKey — 獲取一個(gè)key所映射的服務(wù)器信息Memcached::getServerList — 獲取服務(wù)器池中的服務(wù)器列表Memcached::getStats — 獲取服務(wù)器池的統(tǒng)計(jì)信息Memcached::getVersion — 獲取服務(wù)器池中所有服務(wù)器的版本信息Memcached::increment — 增加數(shù)值元素的值Memcached::incrementByKey — Increment numeric item’s value, stored on a specific serverMemcached::isPersistent — Check if a persitent connection to memcache is being usedMemcached::isPristine — Check if the instance was recently createdMemcached::prepend — 向一個(gè)已存在的元素前面追加數(shù)據(jù)Memcached::prependByKey — Prepend data to an existing item on a specific serverMemcached::quit — Close any open connectionsMemcached::replace — 替換已存在key下的元素Memcached::replaceByKey — Replace the item under an existing key on a specific serverMemcached::resetServerList — Clears all servers from the server listMemcached::set — 存儲一個(gè)元素Memcached::setByKey — Store an item on a specific serverMemcached::setMulti — 存儲多個(gè)元素Memcached::setMultiByKey — Store multiple items on a specific serverMemcached::setOption — 設(shè)置一個(gè)memcached選項(xiàng)Memcached::setOptions — Set Memcached optionsMemcached::setSaslAuthData — Set the credentials to use for authenticationMemcached::touch — Set a new expiration on an itemMemcached::touchByKey — Set a new expiration on an item on a specific server
標(biāo)簽: PHP
相關(guān)文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
亚洲91精品| 影音国产精品| 老司机精品视频网| 国语精品一区| 中文一区在线| 在线手机中文字幕| 国产乱人伦精品一区| 99国产精品自拍| 亚洲综合电影| 国产欧美一区二区精品久久久 | 亚洲资源网站| 欧美日韩精品一区二区三区视频| 少妇久久久久| 麻豆国产91在线播放| 午夜久久av | 水野朝阳av一区二区三区| 国产一区丝袜| 日韩精品免费一区二区在线观看 | 成人国产精品久久| 在线日韩成人| 视频一区二区中文字幕| 欧美性感美女一区二区| 亚洲不卡系列| 日韩.com| 久久久久久一区二区| 美日韩一区二区三区| 国产精品一区二区三区www| 日韩欧美激情| 美女精品久久| 日韩在线成人| 亚洲啊v在线免费视频| 国产精品视区| 91精品精品| 日韩精品网站| 国产精品成人一区二区网站软件| 成人影视亚洲图片在线| 国产视频欧美| 老牛国产精品一区的观看方式| 国产日韩欧美一区二区三区在线观看| 免费视频最近日韩| 奇米狠狠一区二区三区| 精品国产乱码久久久| 欧美一区二区三区久久精品| 亚洲ww精品| 国产精品magnet| 日韩成人亚洲| 亚洲一区二区日韩| 亚洲最新av| 欧美激情视频一区二区三区免费 | 国产精品欧美一区二区三区不卡| 久久精品毛片| 成人av三级| 欧美aa国产视频| 69堂免费精品视频在线播放| 精品精品99| 欧美一级专区| 成人精品国产亚洲| 亚洲综合电影| 另类av一区二区| 国产伊人久久| 久久亚洲视频| 欧美日韩在线播放视频| 久久国产精品免费精品3p | 国产精品手机在线播放| 视频一区视频二区在线观看| 国产精品美女午夜爽爽| 午夜国产精品视频免费体验区| 日韩精品一级| 婷婷综合激情| 天堂av一区| 久久天堂精品| 日韩国产专区| 老司机免费视频一区二区| 日本在线不卡视频一二三区| 国产精品日韩| 国产 日韩 欧美一区| 久久精品中文| 日日摸夜夜添夜夜添国产精品| 欧美va亚洲va日韩∨a综合色| 日韩福利视频一区| 少妇精品久久久一区二区 | aa亚洲婷婷| 91精品国产乱码久久久久久久| 欧美一区二区三区免费看| 国产精品美女久久久| 午夜久久美女| 亚洲婷婷丁香| 7m精品国产导航在线| 中文字幕成人| 国产欧美日韩亚洲一区二区三区| 日本一区免费网站| 日韩一区二区三区四区五区| 欧美天堂一区二区| 国内在线观看一区二区三区| 成人国产精品久久| 亚洲韩日在线| 欧美一区激情| 韩国久久久久久| 国产精品毛片久久| 日韩午夜一区| 欧美一区二区三区久久精品| 国产精品主播| 成人日韩在线观看| 国产亚洲在线观看| 欧美一区久久| 国产一区二区三区免费在线| 国产aa精品| 免费精品视频最新在线| 久久成人国产| 国产精品日本一区二区三区在线| 国际精品欧美精品| 亚洲伊人精品酒店| 岛国av免费在线观看| 久久一区亚洲| 三级一区在线视频先锋| 成人精品国产亚洲| 日韩在线网址| 欧美粗暴jizz性欧美20| 一区在线视频观看| 欧美国产日韩电影| 日韩一区二区三区四区五区| 亚洲天堂1区| 精品久久久久中文字幕小说| 成人羞羞在线观看网站| 欧洲一级精品| 久久99久久人婷婷精品综合| 亚洲一区观看| 欧美aa在线观看| 欧美在线黄色| 亚洲欧美日韩国产| 日韩精品午夜| 97精品一区二区| 国产一区二区三区网| 国产精品亚洲欧美日韩一区在线 | 日韩av一级| 成人在线超碰| 国产成人精品亚洲线观看| 久久精品国产久精国产| 7m精品国产导航在线| 久久中文字幕二区| 91看片一区| 麻豆网站免费在线观看| 国产精品99精品一区二区三区∴| 亚洲aⅴ网站| 日本一区二区三区视频在线看| 午夜欧美精品久久久久久久| 黄色日韩在线| 免费观看日韩电影| 日韩不卡免费视频| 久久精品九色| 成人自拍av| 天堂成人国产精品一区| 天堂久久av| 久久av导航| www成人在线视频| 国产毛片一区| 日韩高清二区| 国产一区二区三区国产精品| 精品美女在线视频| 99久久精品网| 日韩国产在线观看一区| 久久伊人国产| 色婷婷久久久| 91免费精品国偷自产在线在线| 精品视频国内| 亚洲婷婷丁香| 成人精品亚洲| 91综合久久爱com| 欧美亚洲国产精品久久| 欧美a级一区| 亚洲一区二区免费在线观看| 九九九精品视频| 久热精品在线| 在线精品亚洲欧美日韩国产| 在线观看亚洲精品福利片| 韩日一区二区| 视频一区中文字幕精品| 99久久99久久精品国产片果冰| 91欧美精品| 免费在线观看日韩欧美| 国产欧洲在线| 欧美成人精品午夜一区二区| 久久av一区二区三区| 欧美精品日日操| 亚州精品视频| 亚洲在线电影| 2023国产精品久久久精品双| 日韩.com| 久久精品网址| 另类综合日韩欧美亚洲| 亚洲精品乱码| 日韩精品一区第一页| 欧美在线资源| 宅男在线一区| 久久久久午夜电影| 久久精品国产大片免费观看| 精品三级久久| 99热精品久久| 欧美在线亚洲综合一区| 激情婷婷亚洲|