I need to know how libcurl works.
i.e how it handles connections, is it just a single process that handles all the connections or is there like multiple threads to handle multiple connection, what is the bottleneck in using libcurl to handle 100-200 connections at a time, what is the overhead in using this library etc.
Is there an online documentation that gives all this details? The only documentation that I found was on how to intall, and setup and how to use curl etc.
I am using curl(libcurl) to send http request to a program that is listening on a particular port. I just need to know the bottleneck.
Part1
“how it handles connections, is it just a single process that handles all the connections or is there like multiple threads to handle multiple connection”
libcurl runs in the same thread/process as your application. The multi interface handles parallel connections in that single thread. (With the exception that name resolves may optionally be done using another thread.)
Part2
” what is the bottleneck in using libcurl to handle 100-200 connections at a time, what is the overhead in using this library”
That depends on a multitude of factors. It is much better if you evaluate and test that yourself under your own special conditions. There is no extensive test data or numbers.