TP5如何整合WorkerMan以及GatewayWorker

  介绍

这篇文章给大家分享的是有关TP5如何整合WorkerMan以及GatewayWorker的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

<强> TP5整合GatewayWorker

<强> Windows版安装

)使用作曲家创建项目topthink/认为testTG,来安装thinkphp5。

b)进入thinkphp5的目录,此处为testTG,使用作曲家需要WorkerMan/gateway-worker-for-win安装Windows版本的网关。

c)去官网下载Windows版的gateway-worker,里面有demo.http://www.workerman.net/download

d)将下载的压缩包解压,将应用程序/Yourapp中的文件全部复制到thinkphp5目录应用程序里面的任意文件夹,这里取名为推动。

e)将解压后的文件夹中的start_for_win.bat复制到thinkphp5的根目录,即与应用程序同级的目录。

f)右键start_for_win.bat,点编辑,将里面的目录改成自己的目录,这里改为

php 应用程序\ \ start_register.php 推;应用\ \ start_gateway.php 推;应用\ \ start_businessworker.php推   暂停

g)保存退出。双击运行。

<强> Linux版安装

)使用作曲家创建项目topthink/认为testTG,来安装thinkphp5。

b)进入thinkphp5的目录,此处为testTG,使用作曲家需要workerman/gateway-worker安装Linux版本的网关。

c)去官网下载Linux版的gateway-worker,里面有demo.http://www.workerman.net/download

d)将下载的压缩包解压,将应用程序/Yourapp中的文件全部复制到thinkphp5目录应用程序里面的任意文件夹,这里取名为推动。

e)将解压后的文件夹中的start.php复制到thinkphp5的根目录,即与应用程序同级的目录。

f)将start.php文件中最后部分forearch循环括号内的路径改为自己的正确路径。

在命令行php开始。php开始启动。

<强> TP5整合WrokerMan

<强> Windows版安装

)使用作曲家创建项目topthink/认为testTW,来安装thinkphp5。

b)进入thinkphp5根目录,即testTW。先使用作曲家需要topthink/think-worker,

再使用作曲家需要workerman/workerman-for-win,来安装workerman。安装成功之后删除供应商\ workerman \ workerman。

c)在thinkphp5根目录(即与应用程序同级目录)创建服务器。php,编辑一下内容。

& lt; php ?   efine (& # 39; APP_PATH& # 39;,, __DIR__ 只& # 39;/应用程序/& # 39;);   定义(& # 39;BIND_MODULE& # 39;, & # 39;推动/工人# 39;);//,加载框架引导文件   require  __DIR__ 只& # 39;/thinkphp/start.php& # 39;;

d)创建workerman的控制器,命名为工人。php。在应用程序//控制器,目录不存在自行创建。添加以下内容:

保护插座美元=& # 39;websocket://127.0.0.1:2346& # 39;其中127.0.0.1为套接字服务器所在的ip地址。此处监听本机的2346端口。

& lt; php ?   ,   namespace 应用\ \推控制器;   ,   use 认为\工人\服务器;   ,   class  Worker  extends 服务器   {   ,,,protected  socket 美元;=,& # 39;websocket://127.0.0.1:2346& # 39;;   ,   ,,,/* *   ,,,,*,收到信息   ,,,,*,@param  $连接   ,,,,* @param 元数据   ,,,*/,,,public  function  onMessage(连接美元,,数据)   ,,,{   ,,,,,,,连接→美元发送(& # 39;我收到你的信息了& # 39;);   ,,,}   ,   ,,,/* *   ,,,,*,当连接建立时触发的回调函数   ,,,,*,@param  $连接   ,,,*/,,,public  function  onConnect(连接)   ,,,{   ,   ,,,}   ,   ,,,/* *   ,,,,*,当连接断开时触发的回调函数   ,,,,*,@param  $连接   ,,,*/,,,public  function  onClose(连接)   ,,,{   ,,,,,,,   ,,,}   ,,,/* *   ,,,,*,当客户端的连接上发生错误时触发   ,,,,*,@param  $连接   ,,,,*,@param  $代码   ,,,,*,@param 味精美元   ,,,*/,,,public  function  onError(连接,美元,代码,美元,美元味精)   ,,,{   ,,,,,,,echo “error  code 美元;味精\ n"美元;;   ,,,}   ,   ,,,/* *   ,,,,*,每个进程启动   ,,,,*,@param  $工人   ,,,*/,,,public  function  onWorkerStart(工人)   ,,,{   ,   ,,,}   }

e)在命令行下运行,启动监听服务php server.php

f)任意位置新建一个html文件。其中内容为:

& lt; meta  http-equiv=癈ontent-Type",内容=皌ext/html;, charset=utf-8",/比;   & lt; script>   时间=ws  new  WebSocket (“ws://localhost: 2346“);   时间=ws.onopen 函数(),{   ,,,警报(“连接成功“);   ,,,ws.send(& # 39;汤姆# 39;);   ,,,警报(“给服务端发送一个字符串:tom");   };   时间=ws.onmessage 函数(e), {   ,,,警报(“收到服务端的消息:“,+,e.data);   };   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null

TP5如何整合WorkerMan以及GatewayWorker