apache 伺服器的性能非常低(windows 2012 R2)
我有一個全新的帶有 windows 2012 r2 64 位的 HP 伺服器。它有 2 個 Xeon 處理器 E-5 2603 v3。(1.6ghz) 和 32 GB 記憶體並執行 XAMPP (apache 2.4, mysql 5.7, php 5.6)。伺服器還沒有生產..
該程序有一些大腳本(如生成患者臨床病史的大型 pdf 文件,超過 450 頁)。
我的個人電腦是標準電腦,配備英特爾酷睿 i3 (3.2 ghz) 處理器、4GB 記憶體、Windows 10 64 位。
我的個人電腦怎麼可能比新伺服器有更好的性能?在我的電腦上大約需要 40 秒的大型腳本,在新伺服器上最多需要 3 分鐘,執行相同版本的 apache、mysql、php 和完全相同的設置。
在腳本執行時,我打開任務管理器,我看到新伺服器只使用了 9% 的 cpu。它僅使用其 12 個核心中的一個。此外,記憶體的使用率非常低。
我懷疑差異是由 i3 處理器在至強上的超執行緒造成的。這是可能的?
有沒有辦法更好地利用資源?我知道新的伺服器硬體工作正常,因為它已經過 HP 的審查。
您基本上已經回答了您自己的問題:在您的本地 PC 上,您有一個 3.2Ghz 的單執行緒。在您的伺服器上,您有一個 1.6Ghz 的單執行緒。現在,您的至強處理器每個週期可以執行更多指令,並且擁有更大的二級記憶體。但是,除非您的軟體利用它,否則這一切都是毫無意義的。
當您使用您所描述的單執行緒腳本時,您需要更少、更快的核心。沒有更多更小的核心。
為了使這個腳本更好地擴展,您可能必須執行緒化 PDF 生成過程。在不了解您正在生成的文件類型的情況下,我建議將生成分成多個部分,並並行執行每個部分。生成所有部分後,將生成的 PDF 粘合在一起。
如果您出於某種原因無法做到這一點,那麼您可能無能為力。您需要購買適合您情況的硬體,在這種情況下,您會遇到不匹配的情況。