一台服务器部署两个webman项目都启动gatewaywork服务 ,一直报端口1236被占用

fright886

问题描述

一台云服务器部署两个webman项目 并且都启动gatewaywork服务 ,只能成功启动一个项目 ,另一个项目一直报端口被占用,
端口配置都改了
还需要改什么配置吗
下面是服务启动端口和报错

程序代码

gateway配置代码

return [
    'gateway' => [
        'handler'     => Gateway::class,
        'listen'      => $_ENV['SOCKET_LISTEN']??'websocket://0.0.0.0:7272',
        'count'       => cpu_count(),
        'constructor' => ['config' => [
            'lanIp'           => '127.0.0.1',
            'startPort'       => 2300,
            'pingInterval'    => 25,
            'pingData'        => '{"type":"ping"}',
            'registerAddress' => '127.0.0.1:1237',
            '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:1237',
        ]]
    ],
    'register' => [
        'handler'     => Register::class,
        'listen'      => 'text://0.0.0.0:1237',
        'count'       => 1, // Must be 1
        'constructor' => []
    ],
];

报错信息

Exception: Address already in use in /Users/honglei/wwwroot/wenyuan/lvwenmiaobi/webman/vendor/workerman/workerman/Worker.php:2292

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

这个是启动失败的项目

这个是启动成功的项目

操作系统及workerman/webman等框架组件具体版本

centos+php74+webman+Webman-framework v1.4.5

截图

寻求帮助如何解决该问题

153 1 0
1个回答

walkor

两个程序的配置代码都贴下

  • fright886 16天前

    两个项目配置 提了两张图在问题里

  • walkor 16天前

    两个配置startPort都设置成了2300,其中一个改成2400

  • fright886 16天前

    可以了 非常感谢

🔝