亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

有大佬遇到過這個問題嗎:Swoole 中關于 swoole_websocket_server 壓測的問題。謝謝哈~

有大佬遇到過這個問題嗎:Swoole 中關于 swoole_websocket_server 壓測的問題。謝謝哈~

楊__羊羊 2019-09-26 08:41:44
Swoole版本:4.3對swoole_websocket_server壓測時,使用這個方法可行嗎?//代碼片段$this->concurrency=100;$this->request=100000;go(function(){for($c=$this->concurrency;$c--;){$cli=new\Swoole\Coroutine\Http\Client('127.0.0.1',9501);$ret=$cli->upgrade('/');if($ret){while($this->requestedrequest){$this->push($cli);$cli->recv();}}}});官方使用的swoole_http_client在4.3版本移除了。另外:使用Task或不使用Task,壓測時會有很大區別嗎,目前本地測著區別不大,是這樣的嗎?//使用Task代碼$this->serv->on('message',function($serv,$frame){$serv->task($frame->data);});$this->serv->on('task',function($serv,$task){foreach($serv->connectionsas$fd){$connectionInfo=$serv->connection_info($fd);if(isset($connectionInfo['websocket_status'])&&intval($connectionInfo['websocket_status'])==3){$serv->push($fd,$task->data);}}});//未使用Task代碼$this->serv->on('message',function($server,$frame){foreach($this->serv->connectionsas$fd){$connectionInfo=$this->serv->connection_info($fd);if(isset($connectionInfo['websocket_status'])&&intval($connectionInfo['websocket_status'])==3){$server->push($fd,$frame->data);}}});機器信息Mac上安裝的ParallelsDesktop虛擬機系統:Ubuntu16.04.3LTS內存:數量:1核數:2CPU:數量:1大?。?GConcurrency:100Requestnum:100000Successnum:100000Totaltime:8.9364Requestpersecond:11190請前輩們指點,這個量級有問題嗎?感謝!
查看完整描述

2 回答

?
holdtom

TA貢獻1805條經驗 獲得超10個贊

對,使用協程和協程websocket客戶端進行壓測。性能可以進行優化,建議關閉websocket_mask,這個比較耗費CPU
你的機器本身只有1核,還要同時運行客戶端和服務器端,1萬QPS已經非常好了。
                            
查看完整回答
反對 回復 2019-09-26
  • 2 回答
  • 0 關注
  • 471 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號