webman中集成GatewayWorker,在服务reload的是否socket出现问题

timber

问题描述

我每次使用reload的时候,时不时会出现websocket出现端口链接不上的情况,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

截图报错信息里报错文件相关代码

截图
启动图如下:
截图
截图

126 1 0
1个回答

walkor 打赏

启动界面截图下

  • timber 2024-11-01

    您好,启动图我更新上去了

  • timber 2024-11-01

    不是说每次reload都会,就是每次我拉代码reload更新功能,偶尔就会出现can not connect to tcp://127.0.0.1:2301 或者是 can not connect to tcp://127.0.0.1:2300 然后前端的socket就链接不上了

  • walkor 2024-11-01

    几个问题
    1、exit with status 11 代表你的php出现了coredump,可能是使用了不稳定的php扩展导致,也可能是php版本的bug。换个php版本试下。
    2、如果连接数超过1000需要安装event扩展并优化linux内核,restart重启gatewayWorker
    3、cpu高可能是客户端在频繁发送数据给服务端,也可能是因为linux内核没优化导致资源达到上限

  • timber 2024-11-01

    好的,刚看到文档确实没有安装event扩展,socket目前就是客户端一直发送心跳然后服务做了简单的IO处理而已

    非常感谢!!!

  • timber 2024-11-01

    对了,能否麻烦你帮解答一下,我看gateway的进程占用CPU是很高的,内存也占用很高,因为我每次restart的时候
    内存垮的一下就下来了(大概内存下降了有9GB),这关联性大吗

×
🔝