连接到Azure Redis缓存

时间:2014-05-21 03:05:49

标签: azure azure-caching

我正在尝试使用以下代码连接到预览Azure Redis缓存。

var options = new ConfigurationOptions();
options.EndPoints.Add("myname.redis.cache.windows.net", 6379);
options.Ssl = true;
options.Password = "VeryLongKeyCopiedFromPortal";
var connection = ConnectionMultiplexer.Connect(options);

当我这样做时,我得到了异常

"无法连接到redis服务器;要创建断开连接的多路复用器,请禁用AbortOnConnectFail"

导致这种情况的原因是什么?

3 个答案:

答案 0 :(得分:10)

SSL的端口为6380.端口6379用于非SSL。如果没有设置,StackExchange.Redis默认为这些端口,因此您应该只需从代码中删除端口,如下所示:

var options = new ConfigurationOptions();
options.EndPoints.Add("myname.redis.cache.windows.net");
options.Ssl = true;
options.Password = "VeryLongKeyCopiedFromPortal";
var connection = ConnectionMultiplexer.Connect(options);

或者,您可以使用连接字符串而不是ConfigurationOptions对象:

var connection = ConnectionMultiplexer.Connect(
    "myname.redis.cache.windows.net,ssl=true,password=VeryLongKeyCopiedFromPortal");

答案 1 :(得分:1)

我有同样的问题。确保正确复制了密钥:)

我的问题是我没有从UI正确复制base 64编码密钥。考虑下面的两个键。我通常复制/粘贴非破坏字符串的方法是双击。当我双击键时,我得到了第一组数据,而不是整个字符串。

8Rs0Uvx7aaaaaaaaTjaoTu11bz0qOm/o5E8dtWPXtrc=
8Rs0Uvx7aaaaaaaaTjaoTu11bz0qOm

答案 2 :(得分:-1)

从本地在 C# 中,您可以像这样使用...

"localhost, port:6379, password=value"