[英]unable to connect to Redis cluster using stackexchange.redis
我找到了一個非常簡單的代碼塊來測試我是否能夠連接到 ElastiCache 上的 Redis 集群
這是代碼:
using StackExchange.Redis;
Console.WriteLine("Hello, World!");
ConnectionMultiplexer redis = ConnectionMultiplexer.Connect("xxxxx.xxxxx.ng.0001.euw2.cache.amazonaws.com:6379,connectTimeout=30000,responseTimeout=30000,ssl=true,sslProtocols=tls12");
IDatabase db = redis.GetDatabase();
string value = "abcdefg";
db.StringSet("mykey", value);
string value1 = db.StringGet("mykey");
Console.WriteLine(value1);
這是我得到的錯誤:
StackExchange.Redis.RedisConnectionException HResult=0x80131500 Message=無法連接到 redis 服務器。 現在連接出錯。 要允許此多路復用器繼續重試直到它能夠連接,請在連接字符串中使用 abortConnect=false 或 AbortOnConnectFail=false; 在你的代碼中。 Source=StackExchange.Redis StackTrace:在 StackExchange.Redis.ConnectionMultiplexer.ConnectImpl(ConfigurationOptions 配置,TextWriter 日志,Nullable`1 serverType,EndPointCollection 端點)在 StackExchange.Redis.ConnectionMultiplexer.Connect(ConfigurationOptions 配置)在 Program.Writer 日志
$(String[] args) in C:\Users\tracy\source\repos\stackexchangeRedis.test\stackexchangeRedis.test\Program.cs:第5行
所以我添加了“ abortConnect=false
”,現在這是新的錯誤:
StackExchange.Redis.RedisTimeoutException HResult=0x80131505 Message=Timeout performing SET (5000ms), inst: 0, qu: 0, qs: 0, aw: False, bw: CheckingForTimeout, rs: NotStarted, ws: 空閑, in: 0, serverEndpoint : XXXXX.XXXX.ng.0001.euw2.cache.amazonaws.com:6379, mc: 1/1/0, mgr: 10 of 10 available, clientName: TRACY(SE.Redis-v2.6.66.47313), IOCP :(忙碌=0,空閑=1000,最小=8,最大=1000),工人:(忙碌=0,空閑=32767,最小=8,最大=32767),池:(線程=9,隊列項=0, CompletedItems=37), v: 2.6.66.47313(請查看這篇文章了解一些可能導致超時的常見客戶端問題: https://stackexchange.github.io/StackExchange.Redis/Timeouts )Source=StackExchange。 Redis StackTrace:在 StackExchange.Redis.ConnectionMultiplexer.ExecuteSyncImpl[T](消息消息,ResultProcessor`1 處理器,ServerEndPoint 服務器,T defaultValue)在程序中。
$(String[] args) in C:\Users\XXXX\source\repos\stackexchangeRedis.test\stackexchangeRedis.test\Program.cs:第10行
有用的信息:
點網版本:6.0
StackExchange.Redis 版本:2.6.66
我在我的本地機器上使用 visual studio 2022。
Redis 集群配置:彈性緩存配置
從您發送的圖片來看,傳輸中的加密似乎已禁用,但您發送的代碼有ssl=true
。 您必須在更改客戶端代碼以不使用 TLS 時重新創建啟用 TLS 的集群。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.