josh803316 has asked for the wisdom of the Perl Monks concerning the following question:

I'm creating an automation test platform that is controlled via a web interface. I would like for the ajax calls to go directly to a Daemon server (Controller)...that will process the request and pass it on to the appropriate child worker (using some http based ipc). The child worker would then manage starting a test, stopping, etc...

I'm having trouble choosing the right direction to proceed since I know that in the future this project will grow into network monitoring and perhaps management. I would like for one controller and any number of workers in the future.

I have looked at POE(read the docs and examples), Net::Server(looked at the docs on CPAN) and a host of other cpan daemon/server based modules. I was hoping for some guidance on the pros and cons of any of these perl based solutions and for info on what people are typically using in a situation like this.

Replies are listed 'Best First'.
Re: Daemon Server and IPC worker children
by tmaly (Monk) on Apr 20, 2009 at 20:13 UTC

    I have used a POE server that runs on one machine that communicates with the web server via a CGI script that invokes a call to the POE via the POE::Component::IKC modules. The POE writes results to disk and then writes a reference in a database. Another POE server serves up the results though a JSON call.

    In the server I end up using a version of POE::Component::Generic to handle multiple children

      Are you using the POE::Filer::JSON module? I like the idea of being able to separate the POE server to another Linux box. Are you using apache and mod_perl or fast cgi to speed up the cgi calls to the POE server?