Welcome to the Monastery | |
PerlMonks |
comment on |
( [id://3333]=superdoc: print w/replies, xml ) | Need Help?? |
running a process like this which takes a long time (especially a day or more!) from a web request is not really a good idea. It will be using one of the web request threads for all that time. A better solution would be to kick off a job elsewhere and release the web request thread. You can do this by putting a job on a job queue (have a look at beanstalk) then as soon as you have done this, return 'success' to the requesting web page. (success that you have scheduled the job). Then another process which is running as a client would take this job and process it. It can output it's current status and percentage done to a file. Another AJAX web request can interrogate that file and immediately return the job status. If you are only running one of these big jobs at a time then a single job queue client will suffice. If you want to run more in parallel then just run more clients. What is happening here is that each job client is running as a separate operating system process which means you don't have to worry about multi-threading. In reply to Re^2: Providing feedback to Web GUI (Mojolicious)
by Anonymous Monk
|
|