簡體   English   中英

緩存MySQL查詢

[英]Caching MySQL queries

有沒有一種簡單的方法可以在PHP緩存MySQL queries或者失敗,是否有一個小的類集,有人編寫並提供了它可以做到這一點? 我可以緩存整個頁面,但這不會像一些數據更改那樣有效,但有些不會,我想緩存那些沒有的部分。

這是如何在MySQL中緩存查詢的一個很好的概述:

您可以使用Zend Cache緩存查詢結果等。

我認為查詢緩存大小默認為0,即關閉。 編輯你的my.cnf文件,至少給它幾兆字節。 不需要PHP更改:)

對於您正在嘗試的內容可能完全過度,但請查看eAcceleratormemcache 如果您有經常更改的查詢和不會更改的查詢,您可能不希望mysql將所有數據庫查詢緩存相同的時間長度。

像上面這樣的緩存引擎允許您在逐個查詢的基礎上決定緩存數據的時間。 所以說你的標題中的數據會不經常更改,你可以檢查它是否當前在緩存中 - 如果是,則返回它,否則執行查詢,並將其放入緩存中,生命周期為N,因此對於下一個每個頁面加載N秒將從緩存中提取數據而不會靠近MySQL。 然后,您可以自由地從數據庫中“實時”提取其他數據,並在需要時繞過緩存。

我會推薦整頁緩存路由。 如果某些數據發生變化,只需放置令牌/占位符代替動態數據即可。 使用這些令牌緩存整個頁面,然后對令牌的緩存數據進行后處理。 因此,您現在擁有一個包含動態內容的緩存頁面。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM