網路伺服器和 php
我通常用 PHP 編寫程式碼,並且總是使用 apache。我已經創建了自己的網站,但我很快意識到 apache 並不是最好的解決方案:它每頁使用 15MB 記憶體,這使得小型伺服器的記憶體不足,大約有 200 個並髮使用者。
現在,我正在查看其他解決方案,并快速查看了 lighttpd 或 nginx,所以我的問題是:
使用上述兩個更輕的選項,將使我的伺服器能夠處理更多使用者嗎?我問的原因也是因為,當我在這裡輸入時,我的網站正在增長,伺服器端會有一些嚴重的成本,這樣下去,當我有 2000 個使用者時,我需要 10 個 Web 伺服器,這是不可接受的。
我還閱讀了有關 node.js 和 Express 的資訊,這些是 PHP 的有效替代品嗎?我不是在開發像聊天這樣的實時應用程序,而是更像是一個論壇。
提前致謝。
這在很大程度上取決於您的網站/網路應用程序的“個人資料”。
它是否大量使用 SQL,您提供更多動態內容還是更多靜態內容?
你有多少請求/秒?
幾個月前我經歷了你的情況,我手上還有一個快速增長的網站,但不知道該怎麼做,在做了一些研究和測試之後,我使用了以下工具集:
php-fpm daemon
APC 記憶體
lighttpd/fastcgi 到 fpm 守護程序的連接
它工作得非常好,在此之前我只是將 apache/php 與 eaccelerator 一起使用,它以 50 個請求/秒的速度掙扎。
現在我在同一硬體上每秒有 300 多個請求,伺服器甚至沒有出汗。
lighttpd/nginx 等的一個優點是能夠以非常小的佔用空間和很少的成本來提供靜態文件,而沒有 fastcgi 的 apache 即使提供靜態文件也會使用相當大的佔用空間。
php-fpm 使您能夠將預處理與基礎設施的服務層分離,並與 APC 記憶體相結合,這是一個性能良好的工具集。