類QQ的系統後台服務端怎麼做性能測試?怎麼模擬那麼大的並發量?

QQ的系統後台每天處理的請求量非常大, 應該怎麼進行這種系統的性能測試? 已有的性能工具如LoadRunner,Jmeter 等都不適用於這種通過UDP交互的系統,目前一個思路是實現測試樁模擬客戶端常用介面,去掉UI,通過進程或線程實現大量並發。想看看業界是怎麼做的,或者有沒有更好的建議


謝邀,測試環境單機壓測就是樓主說的那些手段。

對於線上環境的壓測,簡單的說有兩種方式

1.直接拿線上用戶壓,把流量都引到某一部分伺服器上,伺服器逐漸減少觀察,用此來估算單機能承載的壓力。

2.拿一大堆伺服器來壓,比如直接用cdn網路模擬真實用戶的訪問。


推薦使用阿里PTS免費性能測試雲平台,地址:http://pts.aliyun.com/lite/index.htm,可以滿足UDP協議的壓測需求


我們最近也在做IM,用golang模擬的客戶端,golang的goroutine花費比較小,所以給每個客戶端開個goroutine,交互協議複雜度還可以的情況下壓測工具在一個8核的機器大概能模擬20w+的goroutine調度,性能還沒有到極限,目前最多也只壓測過40w客戶端,性能大概穩穩定在每秒2w條消息。


對services做tcpcopy


推薦閱讀:

維基百科的伺服器架構是怎樣的?是如何支撐起如此高的訪問量的?
Netty怎麼保持長連接?
在集群中部署多個伺服器如何解決SESSION問題?
一個Web應用(比如網站)是如何部署在多個web伺服器上的?

TAG:即時通訊IM | 高並發 | 伺服器架構 | 性能測試 |