我正在建立一個在線商店&試圖通過最小化MYSQL查詢來提高性能。PHP - 在一個txt文件中緩存MYSQL查詢是否是一個好習慣?
它是很好的做法,緩存通過一個txt文件,MySQL的查詢,然後取這不是查詢?這是我在做什麼」
- 一個PHP類在SQL查詢語句的字符串
- 做它的MD5
- 如果這是第一次它的運行
- 將執行查詢在數據庫上
- 得到一個數組
- 結果序列化陣列並將其存儲爲md5_Of_Query.txt
- 在回報反序列化(的file_get_contents(md5_of_Query.txt))或$資源實際查詢的大小取決於緩存是否存在並且是有效的。
- 類還檢查txt文件的filemtime(),如果其比說,一小時過去時,則重新執行查詢並刷新緩存。
這是不是每次做SQL查詢更有效?我錯過了任何安全問題?
非常感謝,我的WAMP服務器上安裝了memcache,現在將使用此緩存進行構建。 – Emmanuel
在單個WAMP上它不會產生任何區別,Windows上的文本文件訪問**已被**緩存在內存中。 Memcached增加開銷和**竊取內存** Web服務器和數據庫將有更多的用途。 Memcached意味着更多*更多*更大的場景。使用*大型*服務器場和*池*緩存服務器來回答查詢和子查詢。在這種情況下,memcached(通過**網絡套接字**詢問內存通過**文本協議**)可以從豐富的冗餘資源中獲得最佳性能。單機不能從中獲益。 – ZJR
非常好的一點,但是在應用程序的開發生命週期開始時計劃擴展是個好主意。我不相信應用程序將託管在WAMP服務器上,我認爲這僅用於開發和測試。 – serialworm