Php

擴展 Apache/PHP 就像最大化 CPU 核心數量一樣簡單?

  • September 24, 2018

我有一個帶有 4 核 8 執行緒的 Intel i7 CPU 的 Linux/Debian 伺服器。當我執行我的重型 Apache/PHP 作業時,它使用 1 個執行緒,而當我執行並發 Apache/PHP 作業時,它們每個都使用自己的執行緒。

因此,如果我想為高流量做好準備,是否只是最大化核心數量(通過選擇其他 CPU)以能夠處理更多並發作業,前提是它有足夠的記憶體並且數據庫/文件系統沒有不會帶來額外的挑戰?

我曾嘗試同時執行 8 個和 10 個作業,它使用了所有執行緒,CPU 使用率大多為 100%(但執行完美),所以看起來這個理論並沒有完全關閉 - 但還有其他東西可以打破這種線性思維嗎?

或者,我可以使用具有多台伺服器的負載平衡系統,但我想知道使用單台伺服器能走多遠。

PS。Apache/PHP 正在使用禁用執行緒安全的 mod_php,因此它使用 Prefork MPM。不確定我敢使用 Worker MPM,因為我不確定執行緒安全……

PSS。另外,我不一定要尋找更好的性能,主要是能夠處理更高的流量/更多的並發作業。

根據您的描述(100% CPU 使用率),您的應用程序似乎受 CPU 限制。因此,添加更多 CPU 核心或遷移到具有更快核心的機器可能會提高您的性能。

許多雲提供商每小時只向您收取幾美分,以租用具有許多 CPU 核心和大量 RAM 的強大虛擬機。繼續在 16 或 32 個核心上進行測試,以了解您的性能如何隨 CPU/核心數量而擴展。

是的,我建議首先增加系統中的核心數量,然後再增加系統數量。

引用自:https://serverfault.com/questions/932076