小白问一下关于心跳操作的问题,谢谢各位大神

梁大胖

截图
想问下这个心跳操作是写到哪里呢?
我用的tp5框架,写到控制器中,无法找到类 Gateway
截图
在控制器怎么写呢 文档又说gateway和控制器应该分开部署
所以没太弄懂这个客户端定时发送心跳写到哪里?js文件?js也不应该用$gateway->XXX 这种语法啊
先谢谢大神的指导

1721 1 0
1个回答

xiuwang

新手不要想着能够自己把tp和gatewayWorker两个框架代码整合在一起。
如果要想做到,首先要明白php cli和php-fpm/apache-phpmod区别。通读并且理解2个框架的手册,熟悉两个框架的原理执行流程。这个不是几天能搞定的。

对于新手来说,最简单的方式就是按照官方手册分开部署,他们是2个独立的框架,安装部署的时候完全没有任何联系,互相当作对方不存在。部署完之后tp项目里用composer require workerman/gatewayclient,然后就可以在tp项目里愉快的调用Gateway::sendxxx 方法给你的客户端推送数据了。

记住gatewayWorker在web项目中最重要的功能就是给客户端推送数据的功能,其它业务逻辑原来tp怎么做就还是怎么做,需要推送的时候调用tp推送即可。

最后,心跳官方给了2个方案,会哪个用哪个呗,服务端设置最简单。

  • 梁大胖 2020-02-15

    谢谢大神的回答 但是还是没弄懂 我问题截图中官方给出的内容应该写到哪里呀 ?

  • 梁大胖 2020-02-15

    研究了一下 是不是说 我上面问题截图 写到start_getaway 文件中 然后前端js通过定时器向服务器发送心跳 然后 服务器的设置内容就是如果规定时间没有接收到心跳 就断开链接 是不是这个意思哈

  • xiuwang 2020-02-26

年代过于久远,无法发表回答
🔝