昨天我的服務器負載很大,而且,即使我之前在優化性能(我在2個月前有過類似問題),我的服務器也無法處理負載(我有一項服務每分鐘約50個賬戶創建)。我們如何配置symfony 1.4與varnish一起使用?
最後,我的服務器負責處理負載,因爲我更改了實例:我在Amazon EC2上,並且使用了一個具有20個微型實例的負載均衡器。這還不夠。我終於變成了10個大型實例,那沒問題。但是,你知道,大型實例相當昂貴,而且我負擔不起那麼多大型實例(現在,因爲負載較少,我只有「5個大型實例正在運行,但它也太多了) 。
所以,我仍在努力進行優化和服務器配置,但我堅持一個觀點。
到目前爲止,我正在使用symfony和memcached。它工作正常,應緩存的所有內容都被緩存等。
現在,我想在我的apache web服務器前添加一個Varnish。
我這樣做了,我配置了它 - 我想 - 呃,現在它正在運行。問題在於緩存沒有命中。
從我看到的問題是,由symfony發送的HTTP頭沒有正確設置。 例如,對於緩存的要求,我有以下標題:
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache
模塊被正確配置爲使用高速緩存,等等,但我就是找不到在哪裏可以設置正確的HTTP標頭。我知道如何在symfony中爲一個特定的動作設置一個緩存頭,但顯然,我不想在每一個動作上做這件事(順便說一句,即使我這樣做,我認爲這不是正確的方法) 。
所以我問我如何使用清漆用symfony 1.4 從我所看到的,有兩種可能性:
- 我正確設置由symfony的
- 發送的HTTP報頭我配置清漆正確處理由symfony發送的默認HTTP頭
你知道我該如何解決其中一個問題?
謝謝,
N.B. :我在Varnish3
+1有趣的問題。我也將很快使用symfony 1.4的清漆。我會對閱讀答案感興趣。 – Flukey