I have been using Celery some and from what I got I thought the concurrency/workers in the config controlled how many processes that would be at maximum started from the worker that checks the queue but I could be wrong. Another twist on the celery thing is that you could actually have several machines looking at the same config+queue and spreading the load among them and if the queue grows to big you could start up even more servers/machines dealing with the increased load until things cool down again. This is a blog entry I found talking about some of the advantages of Celery. http://ericholscher.com/blog/2010/jun/23/large-problems-django-mostly-solved-delayed-execut/
/kmpm On Sep 6, 7:20 pm, Heath <[email protected]> wrote: > Thanks! yes, > > os.system() will launch the process and return control, but then I'd > have to write a utility to get the PID and other data about the > process. > > I guess I'm looking for a definitive answer that the built-in process > modules cannot launch a process in the background. > > Here are my findings: > > subprocess.Popen and multiprocessing offer properties and methods > ideal for my task, but won't return to the view until the process > ends. > Daemonizing these will allow the calling script (django, in this case) > to quit, but still won't return from the view. > > celery/gettoq/rabbitMQ allows for the creation of a queue, but you > must specify a predefined (as far as I know) number of workers in the > config. This is great for processor-intensive tasks that may only run > for a short period of time, as the worker pool stays the same size, > and processes new requests when there is a worker available. But, in > my case, the processes are not doing much until there is folder > activity, and I need to add worker instances dynamically. > > I feel like I'm just missing something.. Launching system processes > must be a common idiom for a web app, no? > > I do appreciate the response, > > -heath carlisle > > On Sep 6, 12:25 am, Aljoša Mohorović <[email protected]> > wrote: > > > > > On Mon, Sep 6, 2010 at 7:19 AM, Heath <[email protected]> wrote: > > > What I require seems simple, just run the requested process in the > > > background. The terminal equivalent would be: > > > > "nohup <process> <args> &" and return control to the view. > > > > Any ideas on how to achieve this? > > > if this already works in a shell is there some reason why > > "os.system('cmd')" or something similar doesn't work for you? > > > Aljosa Mohorovic -- You received this message because you are subscribed to the Google Groups "Django users" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/django-users?hl=en.

