Asynchronous file io in a module

I am trying to modify the flv streaming module to support h.246 and aac
flv files. All that the module has to do is find the aac and h246
sequence headers in the beginning of the file, and copy these into the
output buffer before the body of the file. This is not particularly
hard, and I have it working with blocking io. What is the proper way to
do this within nginx using asynchronous io? Reading Emiller’s Guide To
Nginx Module Development
(Emiller’s Guide to Nginx Module Development – Evan Miller), I see that I could
do an upstream proxy request to self, but that seems unnecessarily
convoluted. Is there a simpler, high performance way to access the
actual file data without blocking the process?



Posted at Nginx Forum: