1.定时器如果创建过多,会不会导致业务阻塞,比如发送消息延时之类的。 2.有没有方法可以查看当前已经创建的定时器有多少?
1、是否阻塞取决于定时器里执行的业务代码是否有阻塞 2、php start.php status 里能看到当前进程定时器数量
多谢,我看到了,我的workerman运行一段时间后就会出现发消息延时,卡顿等现象,利用php start.php status查看可以看到有少数busy进程,但是问题是,如果我这时候重启下workerman,同样能看到少数几个Busy进程,但是这时候发消息什么的就完全不卡了。。我之前怀疑是不是创建的定时器太多引起了业务阻塞,但是现在看来不是这个原因。我估计是不是workerman 有资源没释放掉导致的
busy是因为业务阻塞卡住了,是业务问题,并不是workerman没释放资源等导致。 手册 http://doc.workerman.net/debug/busy-process.html 这里有定位教程
@1:感谢。但是如果是这样的话,为啥重启之后虽然也有Busy进程,但是完全不卡了呢。
如果越来越卡,有可能是无限创建定时器导致cpu负载上去了
@1:嗯 我再看看,多谢了
@1:还想请教下,那个status里 有个total_request 是当前总共的请求数量吗?
请问查看定时器数量,是哪个字段
1、是否阻塞取决于定时器里执行的业务代码是否有阻塞
2、php start.php status 里能看到当前进程定时器数量
多谢,我看到了,我的workerman运行一段时间后就会出现发消息延时,卡顿等现象,利用php start.php status查看可以看到有少数busy进程,但是问题是,如果我这时候重启下workerman,同样能看到少数几个Busy进程,但是这时候发消息什么的就完全不卡了。。我之前怀疑是不是创建的定时器太多引起了业务阻塞,但是现在看来不是这个原因。我估计是不是workerman 有资源没释放掉导致的
busy是因为业务阻塞卡住了,是业务问题,并不是workerman没释放资源等导致。
手册 http://doc.workerman.net/debug/busy-process.html 这里有定位教程
@1:感谢。但是如果是这样的话,为啥重启之后虽然也有Busy进程,但是完全不卡了呢。
如果越来越卡,有可能是无限创建定时器导致cpu负载上去了
@1:嗯 我再看看,多谢了
@1:还想请教下,那个status里 有个total_request 是当前总共的请求数量吗?
请问查看定时器数量,是哪个字段