我正在连接到启用加密的 Redis(托管在 aws elasticache 中)(传输中和静态)。我正在使用 dotnet core 3.1 和使用 StackExchange.Redis 的 AWS Lambda。
以下是使用的代码
services.AddDistributedRedisCache(options =>
{
options.ConfigurationOptions = new StackExchange.Redis.ConfigurationOptions {
AbortOnConnectFail = false,
EndPoints = { { Environment.GetEnvironmentVariable("Elasticache"), 6379 } },
Ssl = true
};
});
我收到以下错误
没有可用于服务此操作的连接:EVAL;UnableToConnect on:6379/Interactive,来源:ResetNonConnected,输入缓冲区:0,未完成:0,最后一次读取:5 秒前,最后一次写入:5 秒前,未应答写入:68639 秒前,保持活动:60 秒,待定: 0、state:正在连接,last-heartbeat:never,last-mbeat:-1s前,global:5s前,mgr:Inactive,err:never;IOCP: (Busy=0,Free=1000,Min=4,Max=1000), WORKER: (Busy=0,Free=2047,Min=4,Max=2047), Local-CPU: n/a at StackExchange. Redis.ConnectionMultiplexer.ExecuteSyncImpl[T](消息消息,ResultProcessor
1 processor, ServerEndPoint server) at StackExchange.Redis.RedisBase.ExecuteSync[T](Message message, ResultProcessor
1 个处理器,ServerEndPoint 服务器)在 StackExchange.Redis.RedisDatabase.ScriptEvaluate(String script, RedisKey[] keys, RedisValue[] values, CommandFlags flags) 在 Microsoft.Extensions.Caching.Redis.RedisCache.Set(String key, Byte[]值,DistributedCacheEntryOptions 选项)
如果我在没有加密的情况下创建 elasticache,则上面的代码可以正常工作(我删除了语句 ssl=true)。但要求是在加密时使其工作。