WebSocket轻松单台服务器5w并发jmeter实测
生活随笔
收集整理的這篇文章主要介紹了
WebSocket轻松单台服务器5w并发jmeter实测
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
測試結論
websocket 相關配置
<Connector port="9999" protocol="org.apache.coyote.http11.Http11NioProtocol" connectionTimeout="20000" acceptCount="150000"maxThreads="2000" maxConnections="150000" enableLookups="false" redirectPort="8443" /> 復制代碼-
connectionTimeout——默認設置為20秒。通過修改該參數,可以修改tomcat的請求超時時間
-
acceptCount——當tomcat的線程數達到maxThreads后,新的請求就會排隊等待,超過排隊數的請求會被拒絕,acceptCount最好大于等于maxThreads
-
maxThreads:
(1)、部署的程序偏計算型,主要利用cpu資源,應該將該參數設置小一點,減小同一時間搶占cpu資源的線程個數。 (2)、部署的程序對io、數據庫占用時間較長,線程處于等待的時間較長,應該將該參數調大一點,增加處理個數。
-
maxConnections——這個值表示最多可以有多少個socket連接到tomcat上。NIO模式下默認是10000
-
enableLookups——為了消除DNS查詢對性能的影響我們可以關閉DNS查
Nginx
location ^~ /wnhz/websocket/ {proxy_connect_timeout 60s;——該指令設置與upstream server的連接超時時間,有必要記住,這個超時不能超過75秒proxy_read_timeout 3600s;——該指令設置與代理服務器的讀超時時間。它決定了nginx會等待多長時間來獲得請求的響應。這個時間不是獲得整個response的時間,而是兩次reading操作的時間proxy_send_timeout 60s; ——這個指定設置了發送請求給upstream服務器的超時時間。超時設置不是為了整個發送期間,而是在兩次write操作期間。如果超時后,upstream沒有收到新的數據,nginx會關閉連接proxy_http_version 1.1;——支持websocketproxy_set_header Upgrade $http_upgrade;proxy_set_header Connection "upgrade";proxy_set_header Host $host;proxy_pass http://test/websocket/;}--------------------- 官方配置--------------------------------------location /chat/ {proxy_pass http://backend;proxy_http_version 1.1;proxy_set_header Upgrade $http_upgrade;proxy_set_header Connection "upgrade"; } 復制代碼用nginx做websocket的反向代理資源瓶頸原理
Linux測試5wWebSocket連接
百度介紹相關可自行測試。
總結
以上是生活随笔為你收集整理的WebSocket轻松单台服务器5w并发jmeter实测的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 权限组件(6):权限分配的角色管理
- 下一篇: 【洛谷 P2513】 [HAOI2009