1
0
mirror of https://github.com/moparisthebest/curl synced 2024-11-10 11:35:07 -05:00
curl/docs
Linus Nielsen Feltzing 0f147887b0 Multiple pipelines and limiting the number of connections.
Introducing a number of options to the multi interface that
allows for multiple pipelines to the same host, in order to
optimize the balance between the penalty for opening new
connections and the potential pipelining latency.

Two new options for limiting the number of connections:

CURLMOPT_MAX_HOST_CONNECTIONS - Limits the number of running connections
to the same host. When adding a handle that exceeds this limit,
that handle will be put in a pending state until another handle is
finished, so we can reuse the connection.

CURLMOPT_MAX_TOTAL_CONNECTIONS - Limits the number of connections in total.
When adding a handle that exceeds this limit,
that handle will be put in a pending state until another handle is
finished. The free connection will then be reused, if possible, or
closed if the pending handle can't reuse it.

Several new options for pipelining:

CURLMOPT_MAX_PIPELINE_LENGTH - Limits the pipeling length. If a
pipeline is "full" when a connection is to be reused, a new connection
will be opened if the CURLMOPT_MAX_xxx_CONNECTIONS limits allow it.
If not, the handle will be put in a pending state until a connection is
ready (either free or a pipe got shorter).

CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE - A pipelined connection will not
be reused if it is currently processing a transfer with a content
length that is larger than this.

CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE - A pipelined connection will not
be reused if it is currently processing a chunk larger than this.

CURLMOPT_PIPELINING_SITE_BL - A blacklist of hosts that don't allow
pipelining.

CURLMOPT_PIPELINING_SERVER_BL - A blacklist of server types that don't allow
pipelining.

See the curl_multi_setopt() man page for details.
2013-03-13 23:55:24 +01:00
..
examples curl.h: stricter CURL_EXTERN linkage decorations logic 2013-03-12 00:27:47 +01:00
libcurl Multiple pipelines and limiting the number of connections. 2013-03-13 23:55:24 +01:00
.gitignore IGNORE: files generated by maketgz 2010-04-14 17:34:57 +02:00
BINDINGS Guile-curl: a new libcurl binding 2013-02-16 14:26:28 +01:00
BUGS BUGS: update bug tracker URL 2013-01-13 23:16:11 +01:00
CONTRIBUTE Documentation: Typo in docs/CONTRIBUTE 2013-02-22 23:22:22 +01:00
curl-config.1 curl-config.1: fix curl-config usage in example 2012-05-20 15:38:54 +02:00
curl.1 docs: update the comments about loading CA certs with NSS 2013-01-28 14:12:57 +01:00
DISTRO-DILEMMA removed trailing whitespace 2010-02-14 19:40:18 +00:00
FAQ FAQ: refreshed some phrases 2013-02-08 09:58:23 +01:00
FEATURES FEATURES: Provided a little clarity in some IMAP features 2013-03-07 18:31:48 +00:00
HISTORY HISTORY: mention the gopher story 2010-08-28 22:51:22 +02:00
HTTP-COOKIES HTTP-COOKIES: clarified and modified layout 2012-07-03 11:10:41 +02:00
index.html added doctype tag to get HTML compliant 2004-04-27 07:05:22 +00:00
INSTALL move msvc IDE related files to 'vs' directory tree 2013-02-13 17:14:21 +01:00
INSTALL.cmake curl tool: renaming hugehelp files to tool_hugehelp 2012-12-26 23:30:54 +01:00
INSTALL.devcpp Fixed some typos in documentation 2012-07-20 21:02:58 +02:00
INTERNALS OS400: synchronize RPG binding 2013-03-12 15:37:34 +01:00
KNOWN_BUGS socks.c: Added support for IPv6 connections through SOCKSv5 proxy 2012-09-14 00:14:38 +02:00
LICENSE-MIXING Mention axTLS in some more documentation 2011-01-21 14:27:10 -08:00
MAIL-ETIQUETTE Fixed some typos in documentation 2012-07-20 21:02:58 +02:00
Makefile.am HTTP-COOKIES: added cookie documentation 2012-07-03 09:03:08 +02:00
MANUAL MANUAL: clarified user+password in HTTP URLs 2012-09-09 23:08:59 +02:00
mk-ca-bundle.1 mk-ca-bundle.1: convert syntax to what's used elsewhere 2013-01-06 00:15:36 +01:00
README.cmake removed execute file permission 2011-12-30 03:53:25 +01:00
README.netware removed trailing whitespace 2010-02-14 19:40:18 +00:00
README.win32 removed trailing whitespace 2010-02-14 19:40:18 +00:00
RESOURCES Implement SMTP authentication 2010-04-19 11:16:30 +02:00
SSLCERTS docs: schannel and darwinssl documentation improvements 2013-02-18 16:27:30 -07:00
THANKS THANKS: Latin-1'ified Jiri's name 2013-03-11 22:36:32 +01:00
TheArtOfHttpScripting TheArtOfHttpScripting: extended 2011-01-19 13:08:03 +01:00
TODO always-multi: always use non-blocking internals 2013-01-17 19:40:35 +01:00
VERSIONS VERSIONS: clarify our versioning concept 2011-08-08 09:25:59 +02:00

                                  _   _ ____  _
                              ___| | | |  _ \| |
                             / __| | | | |_) | |
                            | (__| |_| |  _ <| |___
                             \___|\___/|_| \_\_____|

README.win32

  Read the README file first.

  Curl has been compiled, built and run on all sorts of Windows and win32
  systems. While not being the main develop target, a fair share of curl users
  are win32-based.

  The unix-style man pages are tricky to read on windows, so therefore are all
  those pages converted to HTML as well as pdf, and included in the release
  archives.

  The main curl.1 man page is also "built-in" in the command line tool. Use a
  command line similar to this in order to extract a separate text file:

        curl -M >manual.txt

  Read the INSTALL file for instructions how to compile curl self.