On Thu, 18 Sep 2014, nikhil ap wrote:
1. I should fix the number of TCP connections to 5000 by setting it using CURLMOPT_MAXCONNECTS.
You also mentioned 15000 connections later on, so I guess you then need to change this value dynamically. If not, you must really rely on extensive use of pipelining or just wait a lot for those 15000 transfers to complete...
2. If there are no handles available, I can create a easy handle on the fly and use that to send the request.
Yes, and each easy handle you add to the multi handle can potentially use its own connection.
3. So I can in fact in one second can have 5000 TCP concurrent connections sending 15000 requests using 15000 handles.
Yes, if you are so lucky that you can pipeline that many connections.
4. This also means that for a single connection, before we have received 200 OK for a request, we would have sent another request which is what I am looking for.
You add easy handles to the multi handle. If you then have pipelining enabled and libcurl has deemed that it works for a particular connection, then the subsequent transfers to the same host can be attempted to get done pipelined. Yes.
-- / daniel.haxx.se ------------------------------------------------------------------- List admin: http://cool.haxx.se/list/listinfo/curl-library Etiquette: http://curl.haxx.se/mail/etiquette.html
