c# - StackExchange.Redis:没有可用的连接服务此操作。无法在HOST:PORT上连接/交互

标签 c# asp.net-core google-cloud-platform redis google-cloud-memorystore

我正在尝试从C#连接REDIS数据库(GCP-memorystore-Redis)。在将值设置为Redis时,出现类似以下的异常:
没有可用的连接来服务此操作。 UnableToConnect on 10.0.0.2:6379/Interactive,正在初始化,最后一个:无,来源:BeginConnectAsync,未完成:0,最后一次读取:10s之前,最后一次写入:10s之前,unanswered-write:115s之前,keep-alive:180s ,状态:Connecting,mgr:10(共10个)可用,last-heartbeat:never,global:0s前,v: 2.0.519.65453 ; IOCP:(忙= 0,空闲= 1000,最小值= 1,最大值= 1000),工作人员:(忙= 1,空闲= 32766,最小值= 1,最大值= 32767),本地CPU:不适用
我正在使用 StackExchange.Redis 版本:2.0.519
码:

               IDatabase redisDB;
                try {
                    ConnectionMultiplexer redis = ConnectionMultiplexer.Connect($"{host}:{port},resolvedns=1,abortConnect=False,keepAlive=180,connectTimeout=10000");
                   
                    redisDB = redis.GetDatabase();
                    
                    if(redisDB==null)
                    {
                     **//Getting Error**
                      var messageId = redisDB.StreamAdd("event_stream", "foo_name", "bar_value");
                     //redisDB.StringSet("RedisKey", "RedisValue");
                    }
                  }
(或)我也在尝试通过使用以下代码来设置值。 (有同样的问题)
redisDB.StringSet("RedisKey", "RedisValue");
你能帮忙吗?

最佳答案

似乎ConnectionMultiplexer connectionstring中的变量“主机”不正确。查看您的异常“在IPAddress:6379 / Interactive上的UnableToConnect”。因此,您的变量“端口”是正确的,其值为6379。也许您将“主机”变量转换为字符串的错误。因此,它具有变量类型(IPAddress)而不是实际值。

关于c# - StackExchange.Redis:没有可用的连接服务此操作。无法在HOST:PORT上连接/交互,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64589212/

相关文章:

google-cloud-platform - 更改 google sql 云中的区域

java - NullPointerException 使用 Java 中的库从 GCS 读取文件

c# - 如何像 Firebug 一样检查 C# 中的元素?

c# - 堆栈和队列枚举顺序

asp.net-core - VS2017 RC 2 csproj文件位置

c# - ASP Core 违反了 String 类型参数 'TRole' 的约束

c# - 从异步回调方法与 UI 线程交互?

c# - Visual Studio C# 无法创建新的 Windows 窗体项目

iis - 使用IIS部署asp.net core网站时出现502.5错误

json - 如何在 BigQuery 中检查键的值是 ARRAY 还是 STRUCT