I’ve reviewed the documentation but am confused on a few points - especially in regards to idle timeouts and connection pool eviction. I was hoping that I could define my requirements and based on that you could recommend which pool to use and how to properly configure it.
I need the following:
- The application will connect to one Redis endpoint.
- Ssl must be enabled for the connections.
- Redis requires the connections to authenticate using a password.
- The connections must be pooled.
- The pool should limit the number of connections to a configurable number.
- The pool must evict any connection that remains idle in the pool for more than a configurable amount of time. When evicted, the connection must be removed from the pool and closed.
If #6 is not supported, I will need a way to perform a keep-alive on the pool members.
Thanks for your help.
The Redis project page describes the 2 Pooled Managers available.
None of them evict connections. It sounds like the
RedisManagerPool would be preferred as you can specify a smaller pool size with any overflow created beyond the pool size is created and released outside the pool allowing for a smaller number of idle connections in the pool.