资讯专栏INFORMATION COLUMN

TP5整合 WorkerMan 以及 GatewayWorker

Fundebug / 1732人阅读

摘要:将解压后的文件夹中的复制到的根目录,即与同级的目录。将文件中最后部分循环括号内的路径改为自己的正确路径。整合版安装使用,来安装进入根目录,即。安装成功之后删除。加载框架引导文件创建的,命名为。在,目录不存在自行创建。

TP5整合GatewayWorker

Windows版安装
a)使用composer create-project topthink/think testTG,来安装thinkphp5.
b)进入thinkphp5的目录,此处为testTG,使用composer require workerman/gateway-worker-for-win 安装Windows版本的gateway。
c)去官网下载Windows版的gateway-worker,里面有demo。http://www.workerman.net/download
d)将下载的压缩包解压,将Applications/Yourapp中的文件全部复制到thinkphp5目录application里面的任意文件夹,这里取名为push。
e)将解压后的文件夹中的start_for_win.bat复制到thinkphp5的根目录,即与application同级的目录。
f)右键start_for_win.bat,点编辑,将里面的目录改成自己的目录,这里改为
php applicationpushstart_register.php applicationpushstart_gateway.php applicationpushstart_businessworker.php
Pause
g)保存退出。双击运行。
Linux版安装
a)使用composer create-project topthink/think testTG,来安装thinkphp5.
b)进入thinkphp5的目录,此处为testTG,使用composer require workerman/gateway-worker 安装Linux版本的gateway。
c)去官网下载Linux版的gateway-worker,里面有demo。http://www.workerman.net/download
d)将下载的压缩包解压,将Applications/Yourapp中的文件全部复制到thinkphp5目录application里面的任意文件夹,这里取名为push。
e)将解压后的文件夹中的start.php复制到thinkphp5的根目录,即与application同级的目录。
f)将start.php文件中最后部分forearch循环括号内的路径改为自己的正确路径。
在命令行php start.php start 启动。 

TP5整合WrokerMan

Windows版安装
a)使用composer create-project topthink/think testTW,来安装thinkphp5.
b)进入thinkphp5根目录,即testTW。先使用composer require topthink/think-worker,
再使用composer require workerman/workerman-for-win,来安装workerman。安装成功之后删除vendorworkermanworkerman。
c)在thinkphp5根目录(即与application同级目录)创建server.php,编辑一下内容。
send("我收到你的信息了");
    }

    /**
     * 当连接建立时触发的回调函数
     * @param $connection
     */
    public function onConnect($connection)
    {

    }

    /**
     * 当连接断开时触发的回调函数
     * @param $connection
     */
    public function onClose($connection)
    {
        
    }
    /**
     * 当客户端的连接上发生错误时触发
     * @param $connection
     * @param $code
     * @param $msg
     */
    public function onError($connection, $code, $msg)
    {
        echo "error $code $msg
";
    }

    /**
     * 每个进程启动
     * @param $worker
     */
    public function onWorkerStart($worker)
    {

    }
}
e)在命令行下运行,启动监听服务php server.php
f)任意位置新建一个html文件。其中内容为:


g)保存,用浏览器打开,就可以看到链接成功。
Linux版安装
a)只需将Windows版安装的b)步骤中的composer命令只执行:composer require topthink/think-worker。即可,其余步骤不变。

简单使用GatewayWorker

class Push{
   
    public function helloAction () {
        $uid = $_GET["uid"];
        session("uid", $uid);

        $view = new View;
        return $view->fetch();
    }

    public function BindClientIdAction () {
        
        $client_id = $_POST["client_id"];
        // 设置GatewayWorker服务的Register服务ip和端口,请根据实际情况改成实际值
        Gateway::$registerAddress = "127.0.0.1:1238";

        $bindUid = session("uid");
        // 假设用户已经登录,用户uid和群组id在session中
        // client_id与uid绑定
        Gateway::bindUid($client_id, $bindUid);
        // 加入某个群组(可调用多次加入多个群组)
        // Gateway::joinGroup($client_id, $group_id);
    }

    public function AjaxSendMessageAction () {
        $message = $_POST["message"];
        // 设置GatewayWorker服务的Register服务ip和端口,请根据实际情况改成实际值
        Gateway::$registerAddress = "127.0.0.1:1238";

        GateWay::sendToAll($message);
    }
}

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/107025.html

相关文章

  • TP5整合 WorkerMan 以及 GatewayWorker

    摘要:将解压后的文件夹中的复制到的根目录,即与同级的目录。将文件中最后部分循环括号内的路径改为自己的正确路径。整合版安装使用,来安装进入根目录,即。安装成功之后删除。加载框架引导文件创建的,命名为。在,目录不存在自行创建。 TP5整合GatewayWorker Windows版安装 a)使用composer create-project topthink/think testTG,来安装th...

    Tony 评论0 收藏0
  • 使用Websocket框架之GatewayWorker开发电商平台买家与卖家实时通讯

    摘要:我们的平台上有虚拟商品和实体商品两大分类,当时也考虑到了消息的读取状态。商家发送时间是否已读。看前端代码当前的所有代码并不是最终的,目前只是阶段性开发,后期在项目中逐步完善。 前段时间公司提了一个新的需求,在商品的详情页要实现站内买家和商品卖家实时通讯的功能以方便沟通促成交易,要开发此功能当时首先考虑到的就是swoole和workerman了,从网上大概了解了一下关于这两款工具的阐述,...

    ZweiZhao 评论0 收藏0
  • 使用Websocket框架之GatewayWorker开发电商平台买家与卖家实时通讯

    摘要:我们的平台上有虚拟商品和实体商品两大分类,当时也考虑到了消息的读取状态。商家发送时间是否已读。看前端代码当前的所有代码并不是最终的,目前只是阶段性开发,后期在项目中逐步完善。 前段时间公司提了一个新的需求,在商品的详情页要实现站内买家和商品卖家实时通讯的功能以方便沟通促成交易,要开发此功能当时首先考虑到的就是swoole和workerman了,从网上大概了解了一下关于这两款工具的阐述,...

    CloudDeveloper 评论0 收藏0
  • 使用Websocket框架之GatewayWorker开发电商平台买家与卖家实时通讯

    摘要:我们的平台上有虚拟商品和实体商品两大分类,当时也考虑到了消息的读取状态。商家发送时间是否已读。看前端代码当前的所有代码并不是最终的,目前只是阶段性开发,后期在项目中逐步完善。 前段时间公司提了一个新的需求,在商品的详情页要实现站内买家和商品卖家实时通讯的功能以方便沟通促成交易,要开发此功能当时首先考虑到的就是swoole和workerman了,从网上大概了解了一下关于这两款工具的阐述,...

    姘存按 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<