我正在运行一个c#.net核心程序,它使用servicestack.redis库与aws elasticache中的redis实现接口。99%的时间都可以正常工作,但有时会出现以下错误,依赖于缓存中的getvalue的方法会失败:
No master found in xxxxxxxx.yyyyyyyyy.clustercfg.apse2.cache.amazonaws.com:6379
我可以在网上找到关于这个错误的信息(如果有的话)。我正在使用:
.net核心3.1
servicestack.redis.core 5.9.2版本
我在aws中的redis配置是:
发动机版本:5.0.6
碎片:1
节点数:2个节点
我如何示例化客户端并使用它获取缓存项的示例:
private readonly RedisManagerPool _redisClient;
_redisClient = new RedisManagerPool(Environment.GetEnvironmentVariable("CACHE_URL") + ":" +
Environment.GetEnvironmentVariable("CACHE_PORT"));
public static T GetCacheValue<T>(string cacheKey, RedisManagerPool pool)
{
try
{
using (var client = pool.GetClient())
{
client.RetryCount = Convert.ToInt32(Environment.GetEnvironmentVariable("CACHE_RETRY_COUNT"));
client.RetryTimeout = Convert.ToInt32(Environment.GetEnvironmentVariable("CACHE_RETRY_TIMEOUT"));
var cacheValue = client.Get<T>(cacheKey);
return cacheValue;
}
}
catch (Exception ex)
{
throw ex;
}
}
暂无答案!
目前还没有任何答案,快来回答吧!