workerman 发送消息丢包怎么处理

whe74120

我现在在做一个语音通话的app,申请-同意-挂断。。。使用workerman通讯的,比如:用户a发送申请给服务端,服务端收到消息后转发给用户b,用户b收到申请后进行通话,但是经常会存在a发了b没收到的情况,类似这种收不到消息的情况下该怎么处理呢

2981 2 0
2个回答

朕震惊了

是不是用了workerman多进程了,把进程数调整成1试下。
 
比如a连A进程,b连的B进程,这时候a给b发消息B是收不到的,这种情况下需要做进程间通讯。
 
如果你对多进程编程不熟的话最好只开一个进程。或者直接用workerman官方的GatewayWorker,GatewayWorker把进程间通讯都封装好了

  • 暂无评论
whe74120

没有 就是考虑到多进程之间的通讯,目前用的是单进程
$worker = new Worker("websocket://0.0.0.0:1234");
$worker->count = 1;
$worker->name = 'websocket';

  • 朕震惊了 2019-09-20

    这种没问题,我觉得可能是业务逻辑问题,或者客户端收到了没处理好

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