ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
## 概述 ### 1、本服务使用的GatewayWorke,请点击参考手册查看详情( ![参考手册 ](http://doc2.workerman.net "参考手册 ")); ### 2、服务端在vendor/GatewayWorker_linux; ### 3、具体实现步骤 1、网站页面建立与GatewayWorker的websocket连接 2、GatewayWorker发现有页面发起连接时,将对应连接的client\_id发给网站页面 3、网站页面收到client\_id后触发一个ajax请求(假设是`bind.php`)将client\_id发到mvc后端 4、mvc后端`bind.php`收到client\_id后利用GatewayClient调用`Gateway::bindUid($client_id, $uid)`将client\_id与当前 uid(用户id或者客户端唯一标识)绑定。如果有群组、群发功能,也可以利用`Gateway::joinGroup($client_id, $group_id)`将client\_id加入到对应分组 5、页面发起的所有请求都直接post/get到mvc框架统一处理,包括发送消息 6、mvc框架处理业务过程中需要向某个uid或者某个群组发送数据时,直接调用[GatewayClient](https://github.com/walkor/GatewayClient)的接口`Gateway::sendToUid Gateway::sendToGroup` 等发送即可 ### 4、目录结构 ~~~ . ├── Applications // 这里是所有开发者应用项目 │   └── YourApp // 其中一个项目目录,目录名可以自定义 │   ├── Events.php // 开发者只需要关注这个文件 │   ├── start_gateway.php // gateway进程启动脚本,包括端口号等设置 │   ├── start_businessworker.php // businessWorker进程启动脚本 │   └── start_register.php // 注册服务启动脚本 │ ├── start.php // 全局启动脚本,此脚本会依次加载Applications/项目/start_*.php启动脚本 │ └── vendor // GatewayWorker框架和Workerman框架源码目录,此目录开发者不用关心 ~~~ ### 5、启动与停止 #### 启动 1、以debug(调试)方式启动 `php start.php start` 2、以daemon(守护进程)方式启动 `php start.php start -d` #### 停止 `php start.php stop` #### 重启 `php start.php restart` #### 平滑重启 `php start.php reload` #### 查看状态 `php start.php status`