簡體   English   中英

無法使用 stackexchange.redis 連接到 Redis 集群

[英]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.

 
粵ICP備18138465號  © 2020-2025 STACKOOM.COM