Comments (8)
I think pooling would only be useful with pub/sub or blocking commands, which is probably not the most common scenario. It would be nice if this was opt in, so it doesn't exhaust connection limits on cloud providers.
from redis.
Exhausting connection limits on cloud providers is actually what I was worried about. I use Redis to store session tokens and I don't my whole massive setup to come down just cause the caching service is out of connections (and is only used on session lookup). I see what you're saying though. I'd love to see a middleground
from redis.
Maybe we can have it configurable such that if you set max connections to ‘nil’ it will just create a new connection each time. Note also the connection pooling is for the KeyedCache impl. Creating a Redis client manually will not be affected by this.
from redis.
I don't see a reason to pool redis connections since they support pipelining. There's little to no performance gain. Actually, I think it'll worsen the performance very slightly.
from redis.
Yeah the only way I see it being useful is for blocking commands. I believe blocking commands put the client in a blocked state and the client is unable to send or receive other commands until that blocking call returns or times out.
from redis.
I agree, but we don't support blocking operations in the Redis Client. We have a separate static method for setting up a blocking client for pub/sub.
from redis.
I see, creating a new RedisClient instance for those commands makes more sense anyways. The only problem I see is there is no way to send commands before subscribe is sent, like AUTH or SELECT for instance.
from redis.
Fixed by #95
from redis.
Related Issues (20)
- Allow keyed cache access without `data` wrapper via `KeyedCacheSupporting` HOT 2
- Why does RedisClient use 'currentSend' to form an adhoc mutex? HOT 12
- Promises for commands in flight do not return when the connection is dropped HOT 4
- Redis 4 Docs HOT 1
- redis.command not working properly - works only with INFO HOT 1
- Redis should provide a Application.Sessions.Provider HOT 1
- ERR max number of clients reached on Heroku free tier HOT 2
- Precondition failed in Redis 4.1.0 when using repository pattern HOT 14
- Random Server Crashes, 4.1.0 HOT 3
- Cannot connect to remote Redis. HOT 1
- PubSub not work with redis 4.1.0 HOT 3
- Change RediStack dependency to GitHub's HOT 3
- Add Key Expiration to Encodable Set HOT 1
- Sending the Redis transaction commands HOT 1
- Redis Lists commands HOT 1
- Connection pooling interfering with PubSub HOT 6
- Compiler warning: deprecated version of flatMapThrowing HOT 1
- SSL Connections (rediss) HOT 1
- Impossible to configure redis, if redis host name is unknown on time of launch
- Change the name of repository to follow new Redis licensing. HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from redis.