Hi all, I am a big fan of the library and I realized several projects using it.
I am now trying to write a proxy using libmicrohttpd and curl; at the moment, I simply do a curl_easy_perform to the real service when I receive a request. I am using an INTERNAL_SELECT mode to manage requests with a pool of threads. I prefer to avoid THREAD_PER_CONNECTION to avoid explosions in terms of thread number and EXTERNAL_SELECT cause the limitation to a single thread.
Whenever I receive a call I have to wait the real server response in order to be able to give a response to the client, and when I have a lot of concurrent requests the pool is exhausted and connections are queued; so I am planning to use the curl multi interface to avoid the blocking on curl request and use an async io system to enhance parallelism.
Is it possible to delay my response (from libmirohttpd) to the time when I receive the response from curl without completely block one thread of the pool?
Am I completely blind and is there another and more simple system to do what I am trying to do?