关于GatewayWorker的使用

Jeffrey

具体的业务需求是这样的:

开发一个服务端,需要支持硬件的tcp长连接,硬件连接到服务端之后回跟服务端进行通信。
在web端实时监控设备的在线状态和数据上报,并且能在web端下发指令给连接着服务端的硬件。

关于第一点,用Gateway框架可以直接实现。但是关于第二点需求,我目前的做法是利用Workerman重新建立一个websocket的服务端,然后web连接上这个websocket的服务端,所有的跟硬件之间的通信都通过_AsyncTcpConnection_进行通信,虽然勉强实现了功能,但是总觉得有点不太方便。有没有更好的解决办法?

3007 1 1
1个回答

walkor

我一般也会像你这样做。

  • Jeffrey 2017-11-13

    hello!我想麻烦问下,Gateway框架下 start_gateway.php 可以有两个吗?比如我一个是tcp协议(start_gateway_tcp.php),另一个是websocket协议(start_gateway_websocket),然后端口设置成不同的,这样就不用通过异步连接来通信了。不过我测试了一下是不行的,不知道理论上是不是可以?我看了文档上说支持多协议,不知道是不是我理解偏了。

  • walkor 2017-11-14

    可以,按照文档设置就行了

  • defeatlr 2017-12-29

    和我项目需求差不多,我现在也是跑2个GW,一个是处理硬件数据上报,一个websocket给WEB后台推送设备状态,多协议没问题的

  • yfyjsz 2018-01-05

    大神们,我现在硬件可以和服务端进行交互了,可是服务器端如何主动发送命令给客户端呢,求解啊

  • yfyjsz 2018-01-05

    @591:大佬,我现在硬件可以和服务端进行交互了,心跳检测没问题了,可是服务器端如何主动发送命令给客户端呢,求解啊

  • defeatlr 2018-01-05

    Gateway::sendClient方法啊@3274:

  • super18man 2021-02-02

    我也是分开文件,设备tcp与gatewayworker连接。然后网页端用websocket与gatewayworker连接。正在测试中

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