I have a worker daemon (gearman) that will be acting as an automated test manager. The manager will receive client requests to start a task or group of tasks and will send those requests to a pool(queue) of workers.
I would like (during app startup) to fork a pool of workers that will be doing long running testing tasks but will be able to communicate with the manager so that the task may be stopped, paused, re-started, status may be queried, etc....
I'm looking for suggestions on which modules might help me best achieve my goal....or just a general guide on the best way to proceed with this type of application design. I have looked at Parallel::ForkManager
as well as POE::Component::PreforkDispatch
along with Parallel::Fork::BossWorkerAsync
but am not sure if these are right for me or if there are more powereful ones out there.
Just looking for some guidance or thoughts on the matter...