2013-11-01 73 views
2

我的web服務器目前是相當的負載。而且我有一個經常遠程訪問的PHP文件。 PHP文件基本上是一個MySQL查詢並返回一個JSON格式的字符串。從文件而不是從MySQL讀取它有什麼不同?

我在考慮使用Cron作業每15分鐘將必要的數據寫入文件,因此PHP文件不會進行MySQL查詢,而是從文件讀取數據。

它有所作爲嗎?我的意思是緩解服務器加載(CPU/MySQL)一點?

+0

是的,當然它會有所作爲。你可以自己來標記這個。此外,只要考慮SQL允許索引和關係等等...你的文件將如何做同樣的事情?如果你剛剛獲得「靜態」數據,那麼XML可能是一個考慮因素。 – Dave

+1

您可能更適合優化您的查詢,因爲Dave Rook表示。如果您的查詢實際上很粗糙,最好讓您的cron作業更新物化視圖。 http://en.wikipedia.org/wiki/Materialized_view –

+0

聽起來好像您的腳本沒有使用任何參數,因爲您可以將它作爲CRON作業運行。也可以考慮簡單地在平面文件中緩存響應,而不是使用CRON定期調用它。 – MrWhite

回答

1

這當然會有所幫助,但是您的解決方案並不是真正可擴展的。對於這種情況,這是一個小問題,但是如果有50個影響性能的文件,你會怎麼做?

你不能,也不應該維護那樣的東西。在這種情況下,你需要一個比專門的cron作業和文件系統緩存更好的緩存機制。

這些是最終可以建立並使系統無法維護的黑客。追求它們很誘人,因爲它們很容易並且可以快速解決問題。但是你真的需要考慮一個更持久的解決方案是否比你提出的快速入侵更好。