【发布时间】:2012-12-31 14:20:33
【问题描述】:
我们的系统每秒向 Redis 缓存发出大约 5000 个请求。我们一直在寻找在这种情况下使用 ServicStack.Redis 客户端的最佳实践。
我们的大多数调用都是针对使用 Typed 客户端的 HashSet:
RedisClient redisInstance = new RedisClient();
var redisTypedClient = redisInstance.As < CustomObject > ();
var data = redisTypedClient.GetValueFromHash(redisTypedClient.GetHash("hset:SetId"), recordId);
最初我们将“redisInstance”作为静态对象,它对少数请求运行良好,但一旦请求数量增加,它开始抛出以下异常: ServiceStack.Redis.RedisResponseException:意外回复
我们将“redisInstance”更改为本地对象,它开始正常工作。
对于我们是否以正确的方式使用它,我们仍然有些困惑。所以我的问题是: 我们用对了吗? PooledRedisClientManager 比这更好吗? 还有其他方法吗?
我们有大约 10 或 15 个不同类型的 redis 哈希集,我们非常频繁地为每个用户查询这些哈希集。
寻找一些好的建议。
【问题讨论】:
-
我遇到了同样的问题。也找不到答案
标签: redis servicestack