作為一名PHPer新手,在求職或解決網(wǎng)站服務(wù)器負載的時候總避免不了和緩存技術(shù)打交道,閑來無事,就決定先研究研究memcached。
查閱相關(guān)資料時發(fā)現(xiàn)這玩意還有兩個東西,memcache和memcached,我有點慌了,不帶這樣折騰人的,最討厭這樣模棱兩可似是而非稀里糊涂的感覺。沒辦法,只好先去百度這兩個家伙到底是怎么一回事了。關(guān)于這兩者的關(guān)系呢我參考了這篇博客的描述,感覺講的還是不錯的,直接上地址memcache和memcached區(qū)別。
下面我就根據(jù)我的理解總結(jié)下這兩者的關(guān)系吧。
memcache
百度百科解釋,memcache是一個高性能的分布式的內(nèi)存對象緩存系統(tǒng),通過在內(nèi)存里維護一個統(tǒng)一的巨大的hash表,它能夠用來存儲各種格式的數(shù)據(jù),包括圖像、視頻、文件以及數(shù)據(jù)庫檢索的結(jié)果等。簡單的說就是將數(shù)據(jù)調(diào)用到內(nèi)存中,然后從內(nèi)存中讀取,從而大大提高讀取速度。memcache是danga的一個項目,最早是LiveJournal 服務(wù)的,最初為了加速 LiveJournal 訪問速度而開發(fā)的,后來被很多大型的網(wǎng)站采用。
也就是說,memcache是一個為了加速網(wǎng)站訪問和降低數(shù)據(jù)庫負載的、基于內(nèi)存的緩存系統(tǒng),而這個緩存系統(tǒng)名字就叫做memcache,沒錯,就是這樣。
memcached
百度百科解釋,Memcached是以守護程序(監(jiān)聽)方式運行于一個或多個服務(wù)器中,隨時會接收客戶端的連接和操作。
既然memcache是這個danga的一個項目的名稱或者是這個緩存系統(tǒng)的名稱,那么memcached就是這個系統(tǒng)服務(wù)的守護進程的一個叫法、一個名稱。當(dāng)你安裝了memcache后運行的memcache服務(wù)名稱叫做memcached。
PHP的memcache客戶端
我們看PHP的手冊其實可以發(fā)現(xiàn)memcache和memcached都存在,只不過memcached方法更多,然后網(wǎng)友們都說memcached更強大,推薦使用memcached。而關(guān)于PHP的兩個memcache客戶端呢我們可以通過這篇文章來幫助我們理解——php_memcache與php_memcached擴展的區(qū)別。