创建连接池
1 private static PooledRedisClientManager prcm = CreateManager(new string[] { "password@ip:port" }, new string[] { "password@ip:port" });
2 public static PooledRedisClientManager CreateManager(string[] readWriteHosts, string[] readOnlyHosts)
3 {
4 //支持读写分离,均衡负载
5 return new PooledRedisClientManager(readWriteHosts, readOnlyHosts, new RedisClientManagerConfig
6 {
7 MaxWritePoolSize = 5,//“写”链接池链接数
8 MaxReadPoolSize = 5,//“读”链接池链接数
9 AutoStart = true,
10 DefaultDb = 0
11 });
12 }
调用
using (IRedisClient Redis = prcm.GetClient()) {
Redis.Set(key, value, dateTime);
}
这是会出现错误 command role not support for your account
解决方案:
在创建连接池的时候 加入这样一句代码 RedisConfig.VerifyMasterConnections = false;
1 public static PooledRedisClientManager CreateManager(string[] readWriteHosts, string[] readOnlyHosts)
2 {
3 RedisConfig.VerifyMasterConnections = false;
4 //支持读写分离,均衡负载
5 return new PooledRedisClientManager(readWriteHosts, readOnlyHosts, new RedisClientManagerConfig
6 {
7 MaxWritePoolSize = 5,//“写”链接池链接数
8 MaxReadPoolSize = 5,//“读”链接池链接数
9 AutoStart = true,
10 DefaultDb = 0
11 });
12 }
问题解决!
另外一个错误
NOAUTH Authentication required
解决方法
private static PooledRedisClientManager prcm = CreateManager(new string[] { "password@ip:port" }, new string[] { "password@ip:port" });
