I implemented a similar system at $work using PoCo::PreforkDispatch. It works pretty well and does replace crashed workers. If you are concerned about frozen jobs, you can easily avoid this problem using a classic alarm signal.
We're having just one issue with this setup however, sometimes the controlling process gets completely stuck on something and has to be killed. I don't know yet if PreforkDispatch is the culprit, but I doubt so. I can keep you posted if you want. Update: this is a MySQL issue, POE and its components have nothing to do with that.
(updated) As for father-children task/result IPC, there is no need for XMLRPC. I think this piece of code is a left-over of an earlier design. Actually, PoCo::PreforkDispatch leverages POE::Filter::Reference, which will serialize using Storable the arguments and return values of your function.
In reply to Re: POE, daemon, how to realize pre-forking worker pool for event processing?
by waba
in thread POE, daemon, how to realize pre-forking worker pool for event processing?
by Kallisti
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |