Apache-2.2

獲取新伺服器

  • April 22, 2011

我的老闆告訴我,如果真的有必要,我們可以買一個新的網路伺服器。我不知道這是否真的有必要,所以我決定問那些可能知道的人。

該網站安裝了 IIS 6.0 和 Apache。IIS 僅託管一個應用程序,它是一個長輪詢應用程序(消耗大量執行緒)。

目前的機器是一個 Windows 2003,有兩個 CPU(可能一個物理的,但兩個邏輯的)。

我們每天有大約 3,000 名獨立訪客。

當您輸入地址並按輸入鍵時,有時初始載入甚至需要一分鐘以上。

我嘗試通過增加 maxWorkerThreads、maxIoThreads 和其他程序模型屬性來微調 IIS,但效果不大。

獲得更好的機器有什麼用?好多少?有什麼建議麼?

有什麼可以幫助但不包括購買新機器的建議?

編輯:這是目前的系統資訊

電腦:Intel(R) Xeon(R) CPU 5130 @ 2.00 GHz,2.00 GB RAM

作業系統:Microsoft Windows Server 2003,標準版,Service Pack 2

如果您需要有關係統的其他資訊,請告訴我。

如果您可以遷移到新的 6 核或更多伺服器,例如 12GB 的現代記憶體、新磁碟、更新的 64 位伺服器作業系統和所有程式碼要求的最新版本,您應該會看到大約 2 到 20 次整體速度提高,實際上可能更多。

這有點厚顏無恥,但是在 StackOverflow 上的這篇文章中看到 Noob 的軟體問題後,我實際上建議不要真正需要升級伺服器。特別是 noob 提到他不超過 50% cpu 時間。

您面臨的問題(我認為)是您的第一個請求進入了您的軟體的 60,000 毫秒超時非同步回調程式碼。

我認為您需要做的是更改軟體,以便在第一次請求時直接將結果傳回,而不需要文件系統監視。檢索目前數據並儘可能快地發回程式碼。

在非同步回發上,按原樣實施您的軟體。

您可以使用Page.IsPostBack屬性了解頁面是第一次被請求還是由於回發而被請求。

這應該允許您的訪問者在我看到您的程式碼後大約 1-5 秒內獲得該頁面,然後僅在 60 秒超時內保持非同步回調。

為使用 stackoverflow 劫持 serverfault 執行緒而道歉 =(

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