萌新!关于WebSocket推送问题

问题描述
我简单描述下我遇到的问题:用户进来握手成功之后我将fd存入redis里面,用swoole_timer_tick定时1000=1秒去读取所有的fd然后用foreach推送数据server->push($fd,$data);推送的时候我走的task,我的配置是
'worker_num'=>8,
'task_worker_num'=>80,
'task_max_request'=>10000,
'task_ipc_mode'=>3,
'max_request'=>1,
问题出现的环境背景及自己尝试过哪些方法
开始以为是读取数据的时候耗费的时间,但是redis读取的。我个人感觉是传输数据大小的问题
相关代码
//请把代码文本粘贴到下方(请勿用图片代替代码)
你期待的结果是什么?实际看到的错误信息又是什么?
有没有批量推送数据的
互换的青春
浏览 227回答 2
2回答

SMILET

使用协程调度吧,你用定时器会出现第一次的消息还在推送中,第二次又进来了又推送一次你可以尝试将时间设长如果恢复正常,就修改为循环协程调度就可以解决这个问题了。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript