title: What's the meaning of pool_connections in requests.adapters.HTTPAdapter?
body: <p>When initializing a requests' <code>Session</code>, two <a href="http://docs.python-requests.org/en/latest/api/#requests.adapters.HTTPAdapter" rel="noreferrer"><code>HTTPAdapter</code></a> will be created and <a href="https://github.com/kennethreitz/requests/blob/master/requests/sessions.py#L340-L341" rel="noreferrer">mount to <code>http</code> and <code>https</code></a>.</p>
  
  <p>This is how <code>HTTPAdapter</code> is defined:</p>
  
  <pre><code>class requests.adapters.HTTPAdapter(pool_connections=10, pool_maxsize=10,
                                      max_retries=0, pool_block=False)
  </code></pre>
  
  <p>While I understand the meaning of <code>pool_maxsize</code>(which is the number of session a pool can save), I don't understand what <code>pool_connections</code> means or what it does. Doc says:</p>
  
  <pre><code>Parameters: 
  pool_connections – The number of urllib3 connection pools to cache.
  </code></pre>
  
  <p>But what does it mean "to cache"? And what's the point using multiple connection pools?</p>