实例B向实例A中的客户端推送数据该怎么做效率最高?

nbyang

目前有这样一个需求 使用的是GatewayWorker
以前定时器是运行在实例A中的,但是随着推送业务量的增加会导致进程阻塞,影响客户端的上行效率,所以现在打算专门再跑一个实例B专门处理下行业务的推送.
实例A 所有的客户端连接和上行数据处理
实例B 仅使用定时器处理io阻塞业务, 查询到数据库中有推送需求时向实例A中的指定客户端推送数据.

想问一下要实现以上功能效率最高的方式是什么? GatewayClient或者其他方式?

1985 2 0
2个回答

抽不完的寂寞

GatewayClient 或者在B模拟一个客户端连到A,发消息给A,让A转发。感觉模拟客户端连到A转发效率高,因为可以长连接一直连着。

  • jackyxie 2020-04-21

    GatewayClient 也可以设置长连接

  • nbyang 2020-04-21

    @6472:请问GatewayClient怎么设置长连接?

  • jackyxie 2020-04-22

    @6970:里面有一个参数,$persistentConnection,连接register前设置这个参数就可以了

  • nbyang 2020-04-23

    谢谢, 今天看代码找到了~ 业务以及分离了,万分感谢!

nbyang

在B模拟一个客户端连到A这个确实不错 感谢

  • 暂无评论
年代过于久远,无法发表回答
×
🔝