我每次使用reload的時候,時不時會出現(xiàn)websocket出現(xiàn)端口鏈接不上的情況,can not connect to tcp://127.0.0.1:2301 Connection refused,我的配置文件如下
return [
'gateway' => [
'handler' => Gateway::class,
'listen' => 'websocket://0.0.0.0:9669',
'count' => 2,
'reloadable' => false,
'constructor' => ['config' => [
'lanIp' => '127.0.0.1',
'startPort' => 2300,
'pingInterval' => 30,
'pingNotResponseLimit' => 2,
'pingData' => '',
'registerAddress' => '127.0.0.1:1236',
'onConnect' => function(){
},
]]
],
'worker' => [
'handler' => BusinessWorker::class,
'count' => cpu_count()*2,
'constructor' => ['config' => [
'eventHandler' => plugin\webman\gateway\Events::class,
'name' => 'ChatBusinessWorker',
'registerAddress' => '127.0.0.1:1236',
]]
],
'register' => [
'handler' => Register::class,
'listen' => 'text://127.0.0.1:1236',
'count' => 1, // Must be 1
'reloadable' => false,
'constructor' => []
],
];
pid:1060270 Exception: can not connect to tcp://127.0.0.1:2301 Connection refused in XXXXXX
啟動圖如下:
啟動界面截圖下
不是說每次reload都會,就是每次我拉代碼reload更新功能,偶爾就會出現(xiàn)can not connect to tcp://127.0.0.1:2301 或者是 can not connect to tcp://127.0.0.1:2300 然后前端的socket就鏈接不上了
幾個問題
1、exit with status 11
代表你的php出現(xiàn)了coredump,可能是使用了不穩(wěn)定的php擴展導致,也可能是php版本的bug。換個php版本試下。
2、如果連接數(shù)超過1000需要安裝event擴展并優(yōu)化linux內(nèi)核,restart重啟gatewayWorker
3、cpu高可能是客戶端在頻繁發(fā)送數(shù)據(jù)給服務端,也可能是因為linux內(nèi)核沒優(yōu)化導致資源達到上限
對了,能否麻煩你幫解答一下,我看gateway的進程占用CPU是很高的,內(nèi)存也占用很高,因為我每次restart的時候
內(nèi)存垮的一下就下來了(大概內(nèi)存下降了有9GB),這關(guān)聯(lián)性大嗎