做队列任务,在onWorkerStart里使用while,会影响服务器性能么

flc1125

在做队列任务,然后在onWorkerStart方法里里使用while(true),去处理队列任务。长时间无限循环会。会影响服务器性能么(如内存溢出,CPU占用过高之类的)!

还有在队列里通过call_user_func_array分发任务处理的时候,如果对应方法的代码问题导致错误。整个队列会停止么?

阅读 2439
1个回答

walkor

在做队列任务,然后在onWorkerStart方法里里使用while(true),去处理队列任务。长时间无限循环会。会影响服务器性能么(如内存溢出,CPU占用过高之类的)!

不会,除非代码写的有问题。

还有在队列里通过call_user_func_array分发任务处理的时候,如果对应方法的代码问题导致错误。整个队列会停止么?

不会整个停止。如果出现致命错误,当前进程回退出,服务端会立刻重启一个进程,重启的进程运行onWorkerStart开始运行。

  • flc1125 2016-06-01

    call_user_func_array后,的那个类方法。如果更新了代码。对应的work需要重启,代码才生效;如何可以不重启,代码就生效。

  • walkor 2016-06-01

    新问题 新开个帖子吧