in reply to Managing a long running server side process using CGI

A file can be a nice and simple way of interfacing with a background process. You can just have a deamon process update a file periodically and then you can have access to that info whenever you want. You could even use something like Data::Dumper or YAML to exchange complex data structures.

However, if you have multiple tasks to run and you're already using a database, I would use the database to do the communication. i.e. set up one table where each record is a task (id, status etc) and run one or more deamon processes that poll that table looking for new tasks and update the records as they progress. Or run a single deamon that forks() off new children for each task. Or run all tasks sequentially, it'll all look the same from the CGI process's point of view.

  • Comment on Re: Managing a long running server side process using CGI