2013-03-25 32 views
0

有多少客戶可以同時連接到TidTCPServer?我用Indy10,DelphiXE2和目標操作系統是Windows Server 2003Indy客戶的最大數量?

是否有德爾福更好的選擇,而不是印的?

回答

3

默認情況下,MaxConnections最大設置爲0,那麼由印第安納波利斯接受服務器另一個連接之前不檢查活動線程的數量,但它主要取決於什麼客戶都做的服務器上。例如,如果您的服務器接受客戶端連接,然後在該客戶端線程上下文中將餅圖計算爲萬億位數,則與正在將工作交付給其他進程相比,正確處理的連接數會少得多。基本上,你的結果將直接根據所執行的任務而變化。

對於通用的答案...如果重寫分配給每個線程默認堆棧大小,你可以有高達32位服務器應用程序幾千連接,但比可能不會更多。請參閱:What's the maximum number of threads in Windows Server 2003?http://www.deltics.co.nz/blog/?p=1330

另請檢查ListenQueue屬性,默認設置爲15。顯然,操作系統可以進一步增加它自己......我不知道當前的Windows Server默認監聽隊列,但我通常會提高默認的數量。

底線 - 讓一千活動線程/連接,你很可能會撞牆宜早不宜遲。

2

然而,許多客戶操作系統可以利用現有資源處理。請記住,每個連接的客戶端都使用自己的線程,因此您必須以進程的默認線程大小工廠。

相關問題