<div dir="ltr"><span style="font-size:12.8000001907349px">Thanks Yichun and Jeff for your inputs and sorry for late ack.</span><div style="font-size:12.8000001907349px"><br></div><div style="font-size:12.8000001907349px">I had a brief look at ngx_drizzle, I see that it needs the library to expose underlying fd, which is not possible in our case, but looks an interesting solution. The other cosocket API mechanism seem to be using unix domain socket as per the docs, so this would be similar to using pipe/socket to handle async apis where the callback could trigger event on the pipe/socket. Please correct me if am missing something? (never worked on lua :) )</div><div style="font-size:12.8000001907349px"><br></div><div style="font-size:12.8000001907349px">Use case is very similar to image optimization case in pagespeed. I am guessing cosocket approach can also fit here?</div><div style="font-size:12.8000001907349px"><br></div><div style="font-size:12.8000001907349px">@Jeff regarding using pipes to trigger event, does it create one pipe per request or just one pipe where say module canĀ </div><div style="font-size:12.8000001907349px">- trigger the async API,</div><div style="font-size:12.8000001907349px">- queue the nginx_request and proceed with other requests, (not sure this is possible with nginx?, as i think nginx handler cannot return something like NGX_AGAIN to resume handler where it called async api)</div><div style="font-size:12.8000001907349px">- when there is event on pipe, nginx pipe_event_handler can figure out which request's data is ready and respond</div><div style="font-size:12.8000001907349px"><br></div><div style="font-size:12.8000001907349px">Easiest approach I can think of is to use domain socket in upstream form, but wanted to avoid as it it would mean additional socket descriptor per request.</div><div style="font-size:12.8000001907349px"><br></div><div style="font-size:12.8000001907349px">If you can help understand at design level w.r.t nginx, will be faster to adapt :)</div><div style="font-size:12.8000001907349px"><br></div><div style="font-size:12.8000001907349px">Thanks again!!</div></div>