我正在开发芹菜任务来聚合来自Facebook和Twitter的社交内容。
任务
如下- facebook_service_handler
- facebook_contents_handler
- image_resize
- save_contents_info
"facebook_service_handler"和"facebook_contents_handler"任务使用带有 URLOPEN 函数的 Facebook Open API。
当 urlopen 请求不多时,它运行良好。(4~5次以下)但是当 urlopen 请求超过 4~5 时,worker 不再工作。
也当芹菜停止时,我打破红色和芹菜,然后重新开始芹菜和redis。执行最后的任务
有人帮我解决这个问题吗??
我正在 mac os 狮子上工作。
理想情况下,您应该有两个不同的队列,一个用于网络 I/O(使用 eventlet,您可以使用它"引发"更多进程),另一个用于其他任务(使用多处理)。如果您觉得这很复杂,请查看CELERYD_TASK_SOFT_TIME_LIMIT。在芹菜任务中使用urllib.open时,我遇到了类似的问题,因为连接可能会挂起并弄乱整个系统。