I have some doubts, and I will appreciate if someone help me :-)
I posted something about this some days ago .
Basically, in the node tree that keeps the objects in the cache, I inserted a list that keeps all listeners  and a FD that points to tempfile. In ngx_http_upstream.c, after the call to ngx_event_pipe(), I try to send data to all listeners.
The list and FD are in shared memory, and all processs can use them.
When NGINX starts with 1 worker, my patch works well. But, when it starts with more than 1 worker, I have some problems. In fact, if a request is in process 1 (P1), and requests from other process (P2) are added in the listeners list, P1 can iterate in this list, but it cannot send data to requests from P2 :-/
If possible, I would like some suggestions about how can I address this issue.
Thanks for your attention.
 - http://mailman.nginx.org/pipermail/nginx-devel/2013-August/004112.html  - Listeners are requests that are waiting data from upstream  - Request that connected to upstream
-- Alex Garzão Projetista de Software Azion Technologies alex.garzao (at) azion.com