
1 0bit 2014-03-14 09:25:21 +08:00 很少用rqinfo看,一直用的rq-dashboard来看,但是queue太多的话,页面可能会刷新不了。 |
2 humiaozuzu 2014-03-14 09:27:21 +08:00 话说 Livid 有用 rq 跑 schedule 嘛?还是都用 crontab 做的? |
3 geew 2014-03-14 09:52:43 +08:00 @humiaozuzu rq 可以在程序里调用添加的 crontab也行吗? |
4 humiaozuzu 2014-03-14 10:05:20 +08:00 |
5 ericFork 2014-03-14 11:58:54 +08:00 借贴求教一下,有没有用 django-rq 的?你们是如何起多个 worker 的? |
6 muxi 2014-03-14 12:03:08 +08:00 rq scheduler 不能删除,这个很蛋疼 |
7 BeanYoung 2014-03-14 12:38:53 +08:00 via iPhone 估计是任务超时 任务执行代码里没有对JobTimeException处理 超时后依然在运行 导致worker的信息在redis里过期 |
10 Livid MOD OP PRO @humiaozuzu 我是用 supervisord 来启动 rqworker。 |
12 VYSE 2014-03-14 16:17:20 +08:00 @BeanYoung 不过我用默认的rqworker命令行, JobTimeoutException会被handle_exception处理,然后置为failed,enqueue得到的result也是能拿到JobTimeoutException,理论上这时queue还会正常工作。 从我这来看,消失的worker过段时间还会出现,可能是signal.alarm 超时信号没有返回到handler,rqworker还是等任务超时结束后才继续运行。 |
13 VYSE 2014-03-14 17:01:34 +08:00 @VYSE 果然是worker里的某个native ext直接忽略SIGINT/SIGALRM等信号,还是改rq开新进程monitor woker进程靠谱些。 |
14 Livid MOD OP PRO |
15 VYSE 2014-03-14 19:50:10 +08:00 https://github.com/nvie/rq/issues/323 不过不报希望会搞定,上次报另外一个就直接close了. |
16 Livid MOD OP PRO 所以我估计我这里问题的根源是,task 里的 requests 发的请求没有加 timeout 设置。 |