On 12/15/06, Jonathan Vanasco <[EMAIL PROTECTED]> wrote:
On Dec 13, 2006, at 1:58 PM, Perrin Harkins wrote: > However, you could also avoid the problem by running only one > apache process. That line got me thinking... I wouldn't do one apache process -- i'd do an entirely new server. Make another mod_perl server (or use a twisted python server, cos its good for stuff like that ) that ONLY handles ghostscript. Instead of talking sockets like in the other post, it speaks via http. It would be like having a second daemon work on things-- except its not really a daemon but a gs dedicated mp server. Your main server works as-is. Instead of opening a ghostscript file, it does a URL get to tell the other server 'start a new session'. Handle everything with URL commands - why? because its way easier than sockets and you can test it using a normal web browser. The ghostscript-only server is single process (no children)-- so you can leave stuff open and just run a periodic check to expire old documents. Your main server just stores some session data for the current state of the ghostscript session. you can
Interesting thinking .. thanks for that. For simplicity's sake I would prefer to have a single web server with some sort of 'process table' arrangement; I'd like to use a global hash for that, but failing that I may look to SQLite, since we are using that in another area. And to perrin, thank you, I am able to report that, no, IPC::Run does not appear to work under mod_perl -- I have posted a node at http://perlmonks.org/?node_id=590115 with more information. Next step, the more complicated solution. -- Alex Beamish Toronto, Ontario aka talexb