我正在尝试从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/