2011-08-25 101 views
4

有沒有理論說緩存應該比文件系統更快?校驗memcache比文件系統高速緩存更快嗎?

我認爲,由於文件系統也使用緩存,所以當文件系統的概念有點鬆散時 - 例如下載「文件」時,我們不應該將文件系統中的內容移至緩存(如memcache)可能與下載memcached對象相同。

我的具體例子是,是否通過memcache或文件系統託管模板引擎。有關係嗎?

+4

memcache針對一個目的進行了優化。文件系統爲許多人優化。 – agf

+0

我嘗試過將緩存與SQL進行比較,並且緩存偏好的差異很大。但是緩慢的數據庫應該是一個解釋性因素,我不排除快速文件系統可以像memcache一樣快或者更快。我問,有時我可以選擇將內容存儲在內存緩存或文件系統中,並且文件系統可能非常快,我想我可以使用memcache提供文件系統 –

回答

8

在許多情況下,您的文件系統可能會更快。例如。當你需要「編譯模板」的緩存時,文件系統會更快。

而文件系統緩存(特別是在linux上)將確保您的緩存模板 - 經常讀取 - 在很短的時間內可用。內核將它們保存在內存中,並且讀取速度會很快。

memcached是一個分佈式鍵/值存儲。它有不同用例

+0

謝謝你的知識! –

4

請閱讀memcached about page瞭解memcached存在的原因。除非您的100個前端Web服務器有一個神奇的羣集文件系統緩存,否則您的問題沒有意義。

+0

感謝您的鏈接。 「通過緩解數據庫負載加速動態Web應用程序」與提供靜態文件不同。所以我知道我可以保存一個查詢是非常好的,因爲下次我不需要去數據層。但要保存一個文件?從文件系統提供文件似乎很快,如果不是更快,並且我只想提供一個基本文件,例如CSS或JavaScript文件,是不是文件系統仍然是一個不錯的選擇,或者如果我想要優化,我應該甚至使用memcache,如果內容不變? –

+0

memcached不是文件緩存。如果你想要一個內容服務器,你應該看清漆或類似。如果你只有一臺服務器,並且它所提供的文件都適合你的文件系統緩存,那麼你可能沒有問題,試圖找到解決方案是不值得的。 – Dustin