我们有一个在passenger上运行的rails应用程序,我们使用RabbitMQ和Workling的组合在后台处理一些任务。使用script/workling_client命令启动工作的工作进程。始终只启动一个工作进程,并且script/workling_client有一个:multiple => false选项,因此只允许一个实例。但有时,在我无法追踪到的神秘情况下,更多的工作人员会涌现出来。如果我让系统运行一段时间,就会出现越来越多的工作员。我不确定这些流氓员工是否会造成任何问题,但不知道为什么会发生,这仍然是令人不安的。我们正在使用Monit来监控工作过程。因此,如果它死了,它会再次复活。但这仍然不能解释为什么突然出现了不止一个这样的问题。
所以我的问题是:谁知道这是什么原因,以及如何让它停止?有没有可能workling有时会自己死掉,而不删除它的pid文件?workling_client所构建的守护进程gem会不会有什么问题?
发布于 2010-03-01 11:02:24
没有答案--我在运行RabbitMQ + Workling时也遇到了同样的问题。
我也在使用上帝来监控单个工作过程(:multiple => false)……我发现多个工作占用了大量的内存&导致严重的资源使用,所以我必须找到解决这个问题的方法。
您可能会发现此消息线程很有帮助:http://groups.google.com/group/rubyonrails-talk/browse_thread/thread/ed8edd0368066292/5b17d91cc85c3ada?show_docid=5b17d91cc85c3ada&pli=1
https://stackoverflow.com/questions/1649289
复制相似问题