
Dear twisted.web developpers and users,
I have written a twisted application for viewing and exporting movies. These movies are in a format specific to my company. I use : twisted 2.1.0, twisted.web 0.5.0, and nevow 0.5.0 (all html templates are written using nevow).
In this web application, there is a feature for exporting a movie file into mpeg, and sending it to the client web browser (file download).
This feature is handled by a resource object which is a subclass of static.File. Exporting a movie into mpeg implies : -> opening the original video file -> doing the conversion (which can take as long as 1 minute or more) -> sending the resulting mpeg file to the browser (file download)
The problem is that while the twisted web application is working handling the export request, the twisted web server is not responsive to any other HTTP request, as long as the video conversion and file transfer is not finished.
I would like to know if there is a standard or recommanded way of setting up concurrency into a twisted.web application. And also if there is a sample program available somewhere.
I would like my web application to be still responsive to other HTTP requests while : -> file conversion to mpeg is being processing -> mpeg file is being transfered to the client browser (which is handled by a static.File subclass resource)
Thank you very much for all your answers. I appreciate very much working with twisted.web and interested to get more insight into the way twisted core handles requests.
Anand