接觸的第一個NOSQL,通常是做爲數據庫的緩存來使用,從而使二次查詢不用直接訪問數據庫而是訪問Memcache,速度更快。php
1.Memcache類和Memcached類的區別html
Memcache直接下載便可用,Mencached還需下載libmemcached。數據庫
Memcache只有比較少的函數,Memcached有比較豐富的函數,好比fetch,setMulti。緩存
兩個類對Memcache的基本操做都有,-d的會比較方便並且穩定。服務器
2.connect,pconnect,addServer方法的區別memcached
connect&pconnect函數
bool Memcache::connect ( string $host [, int $port [, int $timeout ]] )fetch
鏈接Memcache服務器,成功返回TURE,失敗返回FALSE。短鏈接,能夠使用方法 Memcache::close()來主動關閉,或者程序執行完自動關閉。spa
mixed Memcache::pconnect ( string $host [, int $port [, int $timeout ]] ).net
鏈接Memcache服務器,成功返回Memcache對象,失敗返回FALSE。持久化鏈接,這個鏈接不會在腳本執行結束後或者Memcache::close()被調用後關閉。
connect&addserver
看了stackoverflow的解答,有點半懂半猜的:
Connect是比較低級的方法,由於只用指定三個參數,並且只能鏈接一個服務器。
AddServer是比較高級的方法,有不少參數指定鏈接的狀態,能夠鏈接多個服務器。
(3)add,replace,set方法的區別
add(新增):當服務器無對應的key-value時,新增key-value,執行成功;當服務器有對應的key-value時,執行失敗返回false。
Replace(代替):當服務器無對應的key-value時,執行失敗返回false;當服務器有對應的key-value時,覆蓋原來的value,執行成功。
Set(設置):當服務器無對應的key-value時,新增key-value,執行成功;當服務器有對應的key-value時,覆蓋原來的value,執行成功。
根據語義仍是挺好記的。
參考:
http://www.cnblogs.com/yjf512/p/3778287.html
http://www.cnblogs.com/scotoma/archive/2011/02/15/1955573.html
http://php.net/manual/zh/memcache.pconnect.php
http://php.net/manual/zh/memcache.connect.php
http://stackoverflow.com/questions/11926376/memcache-connect-vs-addserver
若有錯誤,懇請指點。_(:з」∠)_,謝謝觀看。