2017-05-29 88 views
0

我们必须托管在Azure中的Redis的缓存,我们用以下的在我们的.NET的核心应用服务.NET核心应用:错误连接到Redis的托管在Azure上

services.AddSingleton<IConnectionMultiplexer>(provider => 
    ConnectionMultiplexer.Connect(Configuration.GetConnectionString("RedisConnection")) 
); 

我们的连接字符串类似以下几点:

ourserver.redis.cache.windows.net:6380,password=******=,ssl=True,abortConnect=False,syncTimeout=4000 
从缓存中获取我们不面对的问题,但如果我们再加上缓存我们有时会出现以下错误

"StackExchange.Redis.RedisConnectionException: It was not possible to connect to the redis server(s); to create a disconnected multiplexer, disable AbortOnConnectFail. ConnectTimeout"

我已经阅读了如设置abortconnectfalse的解决方案,并增加了超时时间,但我已经像上面的连接字符串一样实现了它。

如果您有任何建议或者您认为我们对连接字符串有问题,请提供建议。

更新:我们实现了一个解决方案来解决连接问题,但现在我们得到这样的:

StackExchange.Redis.RedisConnectionException: No connection is available to service this operation 

回答

0

你有什么connectTimeout设置?你可以尝试增加,看看它是否有帮助?

+0

请参阅上面的连接字符串。超时是4000 – Techy

+0

4000是你的syncTimout(这是你的操作超时)。还有另一个名为“connectTimeout”的属性,它是专门用于连接的超时值。如果你没有改变它,它应该是5000(默认值) –

+0

非常感谢。请建议什么是连接超时时间? – Techy

相关问题