Apache-2.2
如何用 Varnish 安排 Web 伺服器?
我想知道對於繁忙的 php+mysql 應用程序來說,最好的(最穩定的記憶體佔用最少的)安排是什麼?
request > Varnish > Apache requests > Varnish > Nginx > php5-fpm requests > Varnish > Nginx > Apache requests > Nginx > Varnish > Apache something else
感謝您對相關基準的提示或參考。謝謝
好吧,我不確定有人如何在不知情的情況下可靠地為您提供建議…
- 這是針對 1 個網站還是針對多個網站(轉售)?
- 完整的確切伺服器規範是什麼?
- 您的流量目標是什麼(點擊量、瀏覽量、頻寬承諾)?
我們給客戶的建議…
如果您需要轉售主機
Nginx > Apache > PHP-FPM
這樣可以為您的客戶提供 .htaccess 支持、PHP-FPM 的安全性(chroot/multiple php.inis)和 Nginx 的靜態文件性能。
如果只是為了你
Pound > Varnish > Nginx > PHP-FPM
這使您可以從 Pound 中解包 SSL,從 Varnish 中進行靜態和動態 (ESI) 記憶體,從 Nginx 中未記憶體的靜態內容以及來自 PHP-FPM 中的動態內容
如果你沒有真正的 Varnish 經驗
阿帕奇 > PHP-FPM
我們的典型架構是…
如果有幫助,對於 Web 集群,我們通常使用:
lvs (initial ssl load balancing) -> pound (ssl-unwrapping) -> varnish (caching) -> haproxy (load balancing) -> nginx (static content) -> php (dynamic content) -> mysql (db)
事實是,如果您沒有正確設置 Varnish(記憶體的私人會話、取消設置不需要的 cookie),則使用 Varnish 可能造成的損害遠大於好處。這同樣適用於 Nginx。
閱讀這個http://www.sonassi.com/knowledge-base/magento-kb/mythbusting/why-shouldnt-i-use-nginx-for-magento/和這個Building an SSL server farm
我的最後建議是諮詢專業人士 - 它的錢花得值。