內(nèi)核優(yōu)化和ulimit都按照官方文檔的設置了
?
php版本7.0和7.1都試過
event拓展也按照官方文檔pecl安裝和選項成功
壓測鏈接數(shù)就是過不了2000,頭好大啊
GateWay? gate 和bs? 都是 設置4個進程
?
需要增大這個進程數(shù)量嗎?
并不是所有業(yè)務都支持高并發(fā)連接數(shù),一般來說單臺服務器能承受的qps是有極限的,帶業(yè)務的服務單機一般很難超過10萬qps,受限于網(wǎng)卡、帶寬、cpu計算能力、業(yè)務代碼質(zhì)量、服務架構(gòu)、客戶端承受能力、業(yè)務類型等等原因。
?
就業(yè)務類型來講:
?
假設你的業(yè)務是請求響應式的業(yè)務,服務器帶業(yè)務qps極限2萬。如果每個連接每秒請求100次,那么也就是最多支持200個連接;如果每個連接每10秒發(fā)出一個請求,那么你的服務器可以支撐20萬連接。
?
假設你的業(yè)務是推送類的,一個人發(fā)言廣播給其他人,按照服務器吞吐量6萬消息/秒來算(已經(jīng)需要百M帶寬),每秒30人發(fā)言,最多支持2000人。但是如果每秒有6人發(fā)言,那么可以支持1萬人在線。相比真實聊天室場景,后者更符合實際情況。
?
所以長連接壓測時要考慮業(yè)務場景,根據(jù)實際業(yè)務場景去測試,否則壓測出來的數(shù)據(jù)并沒有什么實際意義。
這邊是游戲業(yè)務,是3臺 2核4G構(gòu)成分布式,一臺Register 其他兩臺是 Gate和Bs,然后負載均衡用阿里的 標2 最大上限是5W鏈接,用之前你發(fā)在論壇里面的腳本,我設置30秒心跳間隔,但是我這邊測 不管是 通過負載還是 單個節(jié)點去鏈接都是在2000-3000的連接數(shù),再往上拿別的機子去實際鏈接就會出現(xiàn)鏈接超時的情況了,頭很大,我看到論討里說隨隨便便上1W鏈接 我怕是我這邊哪里配置有問題還是怎么
用workerman壓測workerman的話,客戶端服務器也需要安裝event擴展,并根據(jù)workerman手冊優(yōu)化linux內(nèi)核,否則客戶端本身都無法支持發(fā)起大的并發(fā)連接。另外看下是否在業(yè)務里有廣播數(shù)據(jù)的情況。
沒有廣播數(shù)據(jù),當count00的連接發(fā)的是查詢當前連接數(shù)的信息會有一次響應,其他的都是發(fā)1心跳,測試機也安裝了event拓展,就是不管通過負載還是指定節(jié)點去連接,過3000之后,我在另外的實體機去連接就會出現(xiàn)連接過慢、連接超時,整個壓測流程只有心跳和少量的查詢響應