4 ms·
The ServiceStack.Redis client uses pooled ThreadSafe Client Managers by design: https://github.com/ServiceStack/ServiceStack.Redis#redis-client-managers https:/
by mythz 11y ago
The ServiceStack.Redis client uses pooled ThreadSafe Client Managers by design: https://github.com/ServiceStack/ServiceStack.Redis#redis-client-managers https://github.com/ServiceStack/ServiceStack.Redis#redis-cli...
Which works very much like a DB Connection, where the Connection Factory is thread-safe (and what's used to resolve connections) whilst the DB Connection instance it returns are not.
- jsingleton 11y agoSorry, I know you worked hard on it but this comes from real experience. We had an absolute nightmare debugging strange issues in the cache and traced it to this. Probably an older version though.
- mythz 11y agoEach threading issue reported ended up being traced back to sharing a RedisClient instance across multiple threads, e.g. by using a static RedisClient instance, registering RedisClient in IOC, etc - i.e. instead of using one of the ThreadSafe connection factories. If you have any repro showing any multi-threading issues with proper usage we'd love to hear about it (https://github.com/ServiceStack/Issues https://github.com/ServiceStack/Issues).
- jsingleton 11y agoIt was quite a while ago now but I wouldn't be surprised if we were using it wrong when combined with our DI config. :)
- guiomie 11y agoWhat would be your opinion on redis on a windows machine? Is it "production" ready?