2010-07-06 64 views
1

因此,我期待爲我正在構建的論壇進行緩存,並且希望瞭解最佳方法。我一直在做一些閱讀,Zend Framework處理緩存的方式(here)很好地解釋了這個想法,但有一些我不確定的事情。PHP:如何做緩存?

假設我想要緩存帖子,我應該簡單地將查詢內容「轉儲」到文件中,然後從中檢索,或者我應該圍繞數據構建佈局,然後簡單地返回文件?我如何處理用戶信息,歷史上標準的論壇顯示包括用戶在帖子旁邊的總計postcount,這可以改變(假設每頁30個帖子),意味着我必須不斷清理緩存,這看起來似乎相當多餘。

我找不到任何關於如何處理這個問題的文章,我想了解更多信息,有沒有人有任何見解或相關文章提供幫助?

回答

3

在你打多少次緩存(以及誰有用緩存)和你想緩存多少以及生存期應該多大之間總是有一個折衷。

您應該識別應用程序中的瓶頸。如果是保持性能的查詢,通過一切手段緩存查詢。如果它正在構建頁面的某些部分,請緩存這些內容。

至於檢索用戶帖子,如果你希望它儘可能活,那麼你不能緩存這些(或者如果你這樣做,你將不得不使用該用戶發佈的所有緩存線程無效...)。從數據庫中檢索帖子數量(如果完成的話)不應該太重要。您可以緩存一個模板,其中的帖子數量留空以便稍後填寫,或者您可以使用Javascript做一些技巧。

+0

這將是一個有效的建議做str_replace或sprintf在每個帖子文件添加後數量等? – Luke 2010-07-06 09:48:34

+0

@Luke當然,儘管我懷疑構建HTML表格將成爲大多數Web應用程序的瓶頸。 – Artefacto 2010-07-06 11:42:23