2

We have a rails app running on passenger and we background process some tasks using a combination of RabbitMQ and Workling. The workling's worker process is started using the script/workling_client command. There is always only one worker process started, and the script/workling_client has a :multiple => false options, thus allowing only one instance. But sometimes, under mysterious circumstances which I haven't been able to track down, more worklings spawn up. If I let the system run for some time, more and more worklings appear. I'm not sure if these rogue worklings cause any problems, but it is still unsettling not to know why is it happening. We are using Monit to monitor the workling process. So if it dies, it will spawn it up again. But this still does not explain how come there are suddenly more than one of them.

So my question is: does anyone know what can be cause of this and how to make it stop? Is it possible that workling sometimes dies by itself, without deleting it's pid file? Could there be something wrong with the Daemons gem workling_client is build upon?

4

1 に答える 1

0

答えではありません-RabbitMQ + Worklingを実行するのと同じ問題があります。
私は神を使って単一の作業プロセスも監視しています (:multiple => false)...複数の作業プロセスが大量のメモリを消費し、深刻なリソース使用を引き起こしていることがわかったので、解決策を見つけることが重要ですこのため。

次のメッセージ スレッドが役に立つかもしれません: http://groups.google.com/group/rubyonrails-talk/browse_thread/thread/ed8edd0368066292/5b17d91cc85c3ada?show_docid=5b17d91cc85c3ada&pli=1

于 2010-03-01T03:02:24.370 に答える