一直不太理解為什麼用了smarty還要用memcache~~~~
都說smarty + memcache配合用是很好的最佳化組合,但我不明白為什麼用了smarty還要用memcache~
因為smarty不是有頁面緩衝嗎,比如現在有個頁面A,我規定它緩衝的時間是10分鐘,那它只要每十分鐘邏輯運算一次就可以了。還要memcache有什麼用呢?
能給我舉個小例子說明smarty和memcache在什麼情況下配合使用嗎?
謝謝各位!
分享到:
------解決方案--------------------
存的地方不一樣,memcache是存到記憶體中的,smarty是存到硬碟上的,讀資料肯定是從記憶體中讀取快,你看哈這2個的原理吧
------解決方案--------------------
既然smarty可以cache了。為什麼還要用 memcache ?
------解決方案--------------------
這個道理很簡單:由於運行機制和適用範圍的不同,smarty 只被少數初級php程式員使用;而 memcache 被廣泛的採納,並由此衍生出基於記憶體的資料庫系統
------解決方案--------------------
一個是針對資料,一個針對的被訪問的頁面,例如最長用的方式將查詢出來的條資料存入memcache,而有些頁面即時重新整理要求不高的那麼就smarty的緩衝了,作用的範圍不同,就像你吃了胡蘿蔔還要吃西瓜差不多,吃胡蘿蔔是增加維生素C,吃西瓜是增加維生素D,這個如果還迷糊,你可以先不必糾結,等以後慢慢就知道了
------解決方案--------------------
兩個不同的東西...像kyzy說的。雖然都說是為快取服務,但是緩衝的具體對象和實現方法不太一樣。雖然經過各種SM後也能夠彼此通融些,但是就有點脫褲子了。
簡單說smarty緩衝最終的結果.memcache緩衝中間的部分.當然這樣說也比較籠統,但多少你能知道他們不是為瞭解決相同問題的交集。
------解決方案--------------------
smarty 的 cache 是基於檔案的,可稱為 filecache
訪問檔案肯定要比訪問記憶體要慢
所以才有 smarty + memcache 一說
也就是說可以修改 smarty 將 cache 放到 memcache 中去
至於用什麼,怎麼用,那都是方案問題。與實現技術無關