Connection pool
editConnection pool
editConnection pool is a container that holds the Connection
instances, manages
the selection process (via a ConnectionSelector
) and dead connections.
Initially connections are stored in the class as a list and – along with the
connection options – get passed to the ConnectionSelector
instance for future
reference.
Upon each request, the Transport
asks for a Connection
via the
get_connection
method. If the connection fails, it is marked as dead (via
mark_dead
) and put on a timeout. When the timeout is over the connection is
resurrected and returned to the live pool. A connection that has been previously
marked as dead and then succeeds is marked as live (its fail count is deleted).
For reference information, refer to the full Elasticsearch Python documentation.