想问下这个心跳操作是写到哪里呢? 我用的tp5框架,写到控制器中,无法找到类 Gateway 在控制器怎么写呢 文档又说gateway和控制器应该分开部署 所以没太弄懂这个客户端定时发送心跳写到哪里?js文件?js也不应该用$gateway->XXX 这种语法啊 先谢谢大神的指导
新手不要想着能够自己把tp和gatewayWorker两个框架代码整合在一起。 如果要想做到,首先要明白php cli和php-fpm/apache-phpmod区别。通读并且理解2个框架的手册,熟悉两个框架的原理执行流程。这个不是几天能搞定的。
对于新手来说,最简单的方式就是按照官方手册分开部署,他们是2个独立的框架,安装部署的时候完全没有任何联系,互相当作对方不存在。部署完之后tp项目里用composer require workerman/gatewayclient,然后就可以在tp项目里愉快的调用Gateway::sendxxx 方法给你的客户端推送数据了。
composer require workerman/gatewayclient
记住gatewayWorker在web项目中最重要的功能就是给客户端推送数据的功能,其它业务逻辑原来tp怎么做就还是怎么做,需要推送的时候调用tp推送即可。
最后,心跳官方给了2个方案,会哪个用哪个呗,服务端设置最简单。
谢谢大神的回答 但是还是没弄懂 我问题截图中官方给出的内容应该写到哪里呀 ?
研究了一下 是不是说 我上面问题截图 写到start_getaway 文件中 然后前端js通过定时器向服务器发送心跳 然后 服务器的设置内容就是如果规定时间没有接收到心跳 就断开链接 是不是这个意思哈
对
新手不要想着能够自己把tp和gatewayWorker两个框架代码整合在一起。
如果要想做到,首先要明白php cli和php-fpm/apache-phpmod区别。通读并且理解2个框架的手册,熟悉两个框架的原理执行流程。这个不是几天能搞定的。
对于新手来说,最简单的方式就是按照官方手册分开部署,他们是2个独立的框架,安装部署的时候完全没有任何联系,互相当作对方不存在。部署完之后tp项目里用
composer require workerman/gatewayclient
,然后就可以在tp项目里愉快的调用Gateway::sendxxx 方法给你的客户端推送数据了。记住gatewayWorker在web项目中最重要的功能就是给客户端推送数据的功能,其它业务逻辑原来tp怎么做就还是怎么做,需要推送的时候调用tp推送即可。
最后,心跳官方给了2个方案,会哪个用哪个呗,服务端设置最简单。
谢谢大神的回答 但是还是没弄懂 我问题截图中官方给出的内容应该写到哪里呀 ?
研究了一下 是不是说 我上面问题截图 写到start_getaway 文件中 然后前端js通过定时器向服务器发送心跳 然后 服务器的设置内容就是如果规定时间没有接收到心跳 就断开链接 是不是这个意思哈
对