1、怎樣修改windows伺服器中最大的tcp連接數?
在做性能測試測試時候,如果被測試的系統頁面很簡單,並且性能很好,這樣會導致壓力機得tcp鏈接數不夠而導致如下錯誤:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\tcpip\Parameters\TcpTimedWaitDelay to 30
and HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\tcpip\Parameters\MaxUserPort to 65534
and rebooting the machine
See the readme.doc file for more information
通過百度搜索介紹最多的還是讓修改TimedWaitDelay 和MaxUserPort這2個值,其中是將TimedWaitDelay修改的相對小點,可以根據實際情況來定,
同時將MaxUserPort這個值修改大些,但是修改完並重啟機器後,該問題仍然存在,通過多方查資料,然後對一些注冊表進行修改:
[HKEY_LOCAL_MACHINE \System \CurrentControlSet \Services \Tcpip \Parameters]
TcpNumConnections = 0x00fffffe (Default = 16,777,214)
以上注冊表信息配置單機的最大允許的TCP連接數,默認為 16M。這個數值看似很大,這個並不是限制最大連接數的唯一條件,還有其他條件會限制到TCP 連接的最大連接數。
最大動態埠數
TCP客戶端和伺服器連接時,客戶端必須分配一個動態埠,默認情況下這個動態埠的分配范圍為 1024-5000 ,也就是說默認情況下,客戶端最多可以同時發起3977 個Socket 連接。我們可以修改如下注冊表來調整這個動態埠的范圍
[HKEY_LOCAL_MACHINE \System \CurrentControlSet \Services \Tcpip \Parameters]
MaxUserPort = 5000 (Default = 5000, Max = 65534)
最大TCB 數量
系統為每個TCP 連接分配一個TCP 控制塊(TCP control block or TCB),這個控制塊用於緩存TCP連接的一些參數,每個TCB需要分配 0.5 KB的pagepool 和 0.5KB 的Non-pagepool,也就說,每個TCP連接會佔用 1KB 的系統內存。
系統的最大TCB數量由如下注冊表設置決定
[HKEY_LOCAL_MACHINE \System \CurrentControlSet \Services \Tcpip \Parameters]
MaxFreeTcbs = 2000 (Default = RAM dependent, but usual Pro = 1000, Srv=2000)
非Server版本,MaxFreeTcbs 的默認值為1000 (64M 以上物理內存)
Server 版本,這個的默認值為 2000。
也就是說,默認情況下,Server 版本最多同時可以建立並保持2000個TCP 連接。
最大TCB Hash table 數量
TCB 是通過Hash table 來管理的,下面注冊表設置決定了這個Hash table 的大小
HKEY_LOCAL_MACHINE \System \CurrentControlSet \services \Tcpip \Parameters]
MaxHashTableSize = 512 (Default = 512, Range = 64-65536)
這個值指明分配 pagepool 內存的數量,也就是說,如果MaxFreeTcbs = 1000 , 則 pagepool 的內存數量為 500KB
那麼 MaxHashTableSize 應大於 500 才行。這個數量越大,則Hash table 的冗餘度就越高,每次分配和查找 TCP 連接用時就越少。這個值必須是2的冪,且最大為65536.
MaxUserPort = 65534 (Decimal)
MaxHashTableSize = 65536 (Decimal)
MaxFreeTcbs = 16000 (Decimal)
這里我們可以看到 MaxHashTableSize 被配置為比MaxFreeTcbs 大4倍,這樣可以大大增加TCP建立的速度。
2、如何解決終端伺服器超出了最大允許連接數
方法一:用console方式登錄目標伺服器
在 Windows 運行窗口中輸入命令「mstsc /v x.x.x.x /console」,
然後輸入用戶名和密碼,登錄系統即可,
END
方法二、用命令工具注銷已經登錄的用戶
打開「CMD」命令提示符,然後輸入命令「query user /server:x.x.x.x」查看遠程操作系統的用戶連接會話,
註:在會話名一欄,名稱中帶有「rdp」的均為遠程用戶連接會話
接下來執行命令「logoff id /server:x.x.x.x」,注銷沒用的用戶會話。這里我們以上注銷上圖中遠程會話 ID 號為「1」的用戶,
當我們把遠程操作系統中的遠程會話注銷掉以後,就可以採用正常的遠程登錄模式登錄系統了。
END
方法三:使用遠程終端服務管理器
在 Windows 2003 工作站運行窗口中輸入「tsadmin」上打開終端服務管理器,
打開終端服務管理器以後,依次點擊菜單欄中的「操作-連接到計算機」,然後輸入需要管理的目標伺服器的IP,
然後,中斷其它的遠程會話連接,
3、伺服器最大連接數!
伺服器裝成2000系統會好一些,xp好像是有最大連接數的限制。
4、在伺服器上設置最大連接數時,為什麼最多連接數是灰色的,不能修改?
1.依次單擊 開始>程序>管理工具>Internet信息服務>在控制台目錄中右擊"默認web站點"選擇屬性命令,就打開了"默認web站點屬性」對話框,在對話框中選擇,web站點選項卡,裡面的{連接|可以選擇限制到...或者無限,還可以設置連接超時時間,等等.
2.開始---設置---控制面板---授權 (2000系統)
3.有可能還是系統露洞造成的,所以要打補丁
5、MySQL伺服器最大連接數怎麼設置才合理
如果mysql 連接數據設置不合理可能會導致很小的流量mysql就提示MySQL: ERROR 1040: Too many connections錯誤了,那麼要如何才算是合理設置mysql最大連接數呢,下面我來給大家介紹介紹。
MySQL伺服器的連接數並不是要達到最大的100%為好,還是要具體問題具體分析,下面就對MySQL伺服器最大連接數的合理設置進行了詳盡的分析,供您參考。
我們經常會遇見「MySQL: ERROR 1040: Too many connections」的情況,通常,mysql的最大連接數默認是100, 最大可以達到16384。
一種是訪問量確實很高,MySQL伺服器抗不住,這個時候就要考慮增加從伺服器分散讀壓力,另外一種情況是MySQL配置文件中max_connections值過小:
6、如何測試伺服器支持的最大並發連接數
更改服務端的I/O模型吧,這明顯是服務端設計的問題。
你這樣設計上線使用的話,伺服器開銷太大了(主要是線程切換的開銷)。
//--------------------
Listen(socket,5),跟這個有一定關系。
int listen(int sockfd, int backlog); 第二個參數是你監聽客戶端的最大個數,如連接到主機上的客戶端超過其數listen則會返回一個錯誤代號。
backlog你可以設置大一點,如100之類的。
建議使用I/O模型吧,不要使用建立新線程來處理。
(你使用建立新線程的話,會發現每個進程所建立的最大線程數量是有一個限制的)
7、伺服器的最大連接數的問題
這和帶寬有關,連接越多,就越慢。。
8、單台伺服器最多TCP連接數是多少哈
感覺你似乎在問並發連接的問題,眾所周知,為了防範蠕蟲病毒的傳播和攻擊,Windows XP SP2將並發線程最多限制為10個。SP2利用Messages動態鏈接庫,來實時監控每個進程的並發線程數目,一旦它發現某進程的線程數超過10個,就會屏蔽掉部分線程。
通過修改,可以把並發連接調到幾百以上甚至更大,這個數字理論上是沒有上限的。
而作為伺服器,從操作系統級,也會對並發連接數有個限制,因為每個連接要耗CPU和內存的,否則也會癱瘓。而不同的系統,不同的伺服器,可以支持的數量當然不同了,所以你這個問題沒有實際意義,也沒有準確答案。
我實際測試,一台DELL四路四核,32G內存的伺服器,並發500左右完全沒有問題,再大也沒有條件測試,而如果一台普通的低端伺服器,不可能達到同一數量級對吧?
9、網站伺服器最大IIS連接數是多少?有人告訴我帶寬再大也最多一千~
獨立伺服器的話 就無所謂連接數了。只要帶寬足夠,內存夠大,就可以應付上萬的IP請求。別糾結什麼連技術了。只要你賺錢了,大不了再多幾台伺服器不是。對吧。
10、登錄Windows伺服器時提示超出了最大允許連接數怎麼辦
出現這種情況的原因通常是由於一些用戶登錄遠程桌面後直接關閉遠程桌面窗口,而不是採用注銷方式退出,那麼這種情況會導致遠程會話沒有釋放掉,而是繼續保留在伺服器端,因此就會就會佔用總的鏈接數,從而導致了超出了最大允許連接數而無法登錄到系統。
解決登錄Windows伺服器時超出了最大允許連接數方法一:
1、首先在Windows中點擊開始按鈕,找到並打開運行窗口,輸入命令「mstsc /v x.x.x.x /console」,
2、然後輸入用戶名和密碼,即可登錄系統
解決登錄Windows伺服器時超出了最大允許連接數方法二:
1、打開「CMD」命令提示符,輸入命令「query user /server:x.x.x.x」,查看遠程操作系統的用戶連接會話,如圖所示:
註:在會話名一欄帶有「rdp」的均為遠程用戶連接會話!
2、接下來執行命令「logoff id /server:x.x.x.x」,注銷沒用的用戶會話。這里遠程會話 ID 號為「1」的用戶,然後就可以採用正常的遠程登錄模式登錄系統了。