in reply to Reliable asynchronous processing

I'm not quite sure if this would be suitable, but, would it be possible to separate each sub-process to it's own process? Each individual process could then be scheduled to run at certain intervals (or triggered by your app) and store results (in a database or file) that could then be retrieved by your user facing application.