国产+高潮+在线,国产 av 仑乱内谢,www国产亚洲精品久久,51国产偷自视频区视频,成人午夜精品网站在线观看

gateway-worker插件

v1.0.9 版本
2024-04-30 版本更新時間
24721 安裝
17 star

簡介

webman的gateway-worker插件,用于分布式即時通訊、物聯(lián)網(wǎng)等領(lǐng)域。

安裝

composer require webman/gateway-worker

使用

start_gateway.php start_businessworker.php start_register.php中相關(guān)的代碼配置移動到
config/plugin/webman/gateway-worker/process.php

業(yè)務(wù)目錄在 plugin/webman/gateway 目錄

添加gateway進程參考配置

<?php

use Webman\GatewayWorker\Gateway;
use Webman\GatewayWorker\BusinessWorker;
use Webman\GatewayWorker\Register;

return [
    'gateway' => [
        'handler'     => Gateway::class,
        'listen'      => 'websocket://0.0.0.0:7272',
        'count'       => cpu_count(),
        'reloadable'  => false,
        'constructor' => ['config' => [
            'lanIp'           => '127.0.0.1',
            'startPort'       => 2300,
            'pingInterval'    => 25,
            'pingData'        => '{"type":"ping"}',
            'registerAddress' => '127.0.0.1:1236',
            'onConnect'       => function(){},
        ]]
    ],
    'gateway-tcp' => [ // 假設(shè)增加一個tcp端口的gateway進程
        'handler'     => Gateway::class,
        'listen'      => 'tcp://0.0.0.0:7373', // 注意這里端口不能重復(fù)
        'count'       => cpu_count(),
        'reloadable'  => false,
        'constructor' => ['config' => [
            'lanIp'           => '127.0.0.1',
            'startPort'       => 3300, // 注意這里端口不能重復(fù),步數(shù)大大一些,不能和上面2300太接近
            'pingInterval'    => 25,
            'pingData'        => '{"type":"ping"}',
            '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
        'constructor' => []
    ],
];

提示

如果你要在webman控制器里調(diào)用Gateway接口,需要設(shè)置Gateway::$registerAddress為正確的值,例如

// register.listen 里配置的 ip和端口
Gateway::$registerAddress = '127.0.0.1:1236';
Gateway::sendToUid($uid, $data);

更多參見gateway-worker手冊

贊助商