國產開源網路程式設計框架t-io的炸裂效能介紹之30W長連線併發

語言: CN / TW / HK

t-io的效能用炸裂來形容,一點都毫不誇張,請各位專家仔細閱讀下面的內容,想你們心裡有數。

具體請參考:https://www.tiocloud.com/doc/tio/61

準備工作

作業系統Ubuntu 12\ 在/etc/sysctl.conf中新增如下配置:

image.png 在/etc/security/limits.conf中新增如下配置: image.png 最後使用ulimit -an查詢設定是否生效。\ 測試主機cpu: image.png 記憶體: image.png 客戶端測試機用VMware建立12臺虛擬機器。機器效能就不列舉了。每臺虛擬機器可以跑3W連結

1:t-io啟動時記憶體佔用率以及連結情況

image.png

2:5W連結時記憶體佔用情況

image.png

3:10W連結時記憶體佔用情況

image.png

4:20W連結時記憶體佔用情況

image.png

5:30W連結時記憶體佔用情況

image.png

java程序統計情況

image.png

cpu

image.png

jvm

image.png

image.png

2小時後觀察記憶體變化情況如下圖

結論如下:

0-10萬連線。記憶體變化較大。主要是由於記憶體初始化時jvm會佔用一部分記憶體。

10萬之後。每增加10萬連線 記憶體佔用率上升300M左右。

隨著連線數增加可以發現cpu效能對連線數影響不大。

新生代記憶體與老生代記憶體佔用率比較合理。

併發30W連線在2小時內。記憶體變化不明顯。處於合理狀態

根據以上資料可以推論 —-> 以8G記憶體(可使用記憶體為7.5G左右)為例:當記憶體佔用率達到5G左右時足以支撐100W併發連線。