BurstyPool(target_size=10, labels=None, database_role=None)
Concrete session pool implementation:
"Pings" existing sessions via
session.exists
before returning them.Creates a new session, rather than blocking, when
get
is called on an empty pool.Discards the returned session, rather than blocking, when
put
is called on a full pool.
Parameters | |
---|---|
Name | Description |
target_size |
int
max pool size |
labels |
dict (str -> str) or None
(Optional) user-assigned labels for sessions created by the pool. |
database_role |
str
(Optional) user-assigned database_role for the session. |
Methods
bind
bind(database)
Associate the pool with a database.
Parameter | |
---|---|
Name | Description |
database |
Database
database used by the pool to create sessions when needed. |
clear
clear()
Delete all sessions in the pool.
get
get()
Check a session out from the pool.
Returns | |
---|---|
Type | Description |
Session | an existing session from the pool, or a newly-created session. |
put
put(session)
Return a session to the pool.
Never blocks: if the pool is full, the returned session is discarded.
Parameter | |
---|---|
Name | Description |
session |
Session
the session being returned. |