Deadpool manager for asynchronous Redis connections
redis-async-pool implements a deadpool manager for asynchronous
connections of the redis crate. Pooled connections can be used
as regular redis::aio::Connection
.
Features
- runtime agnostic (tested with tokio or async-std)
- optional check of connection on recycle
- optional ttl on connections
Example
use AsyncCommands;
use ;
// Create a pool of maximum 5, checked on reuse without ttl.
let pool = new;
// get a connection with the get() asyncc method and use it as regular redis connection
let mut con = pool.get.await?;
con.set.await?;
let value: = con.get.await?;
assert_eq!;
You can set a ttl for each created connection by the pool, this helps avoiding huge memory consumption when keeping many connections open during a too long time.