swoole那些坑

      最近在做一个数据中心,通过swoole接收websocket协议数据,然后即时存到redis里,再通过定时器抓取redis数据保存到mysql中。本来打算用task  worker工作进程来处理redis操作,但task是同步,worker是异步非阻塞。如果向task发送数据超过处理能力时,会引发所有worker进程摆工,无法再接收新的数据,所以不可控,最后只能用worker来工作处理redis数据,变成了同步操作。

       两年前就已有在用的swoole了,当时就被坑了,运行一段时间进程就挂掉,直到今天V2.0.10版本还是出现同样的问题,主进程存在,但worker进程全挂掉,无耐只能增加监听做法:

     1.通过服务器端写shell脚本来判断主和子进程是否存在,每1分钟监听一次

     2.通过websocket客户端来连接服务器,根据返回结果来判断服务是否正常。每1分钟监听一次


发布了98 篇原创文章 · 获赞 25 · 访问量 60万+

猜你喜欢

转载自blog.csdn.net/lg_lin/article/details/79168043