6

我目前在 Azure 上托管我的 redis 缓存服务器,并让 signalR 依赖它作为使用以下内容的主干......

GlobalHost.DependencyResolver.UseRedis("Server",port,"password","eventKey");

这可以在端口 6379(非 SSL)上找到,但是当我尝试连接到 Azure Redis 服务器的 SSL 端口(6380)时,我的聊天应用程序中断,并且集线器从未启动。这个问题的原因可能是什么?还是我做错了什么?

这是我的浏览器 net::ERR_CONNECTION_RESET 中 /signalr/connect 上出现的错误

4

3 回答 3

17

你可以试试这个: GlobalHost.DependencyResolver.UseRedis(new RedisScaleoutConfiguration(connectionString, "YourServer"));

连接字符串类似于:

connectionString="yourNameHere.cache.windows.net,ssl=true,password=YourPasswordKey"

确保您使用的是使用 StackExchange.Redis 构建的 SignalR(最新的是 gratest ;)

于 2015-04-12T15:48:35.053 回答
1

我将信号器核心库升级到版本 2.2.3.0 并使用以下语法,就像一个魅力。

var redisServer = ConfigurationManager.AppSettings[Constants.RedisServer].ToString();

var redisServerPassword = ConfigurationManager.AppSettings[Constants.RedisServerPassword].ToString();

var connectionString = $"{redisServer},password={redisServerPassword},ssl=True,abortConnect=False";
GlobalHost.DependencyResolver.UseRedis(new RedisScaleoutConfiguration(connectionString, "APIIdentifierString"));
于 2018-06-14T15:39:17.770 回答
0

如果其他人遇到此问题,Azure 门户提供的默认连接字符串似乎包含 abortConnect=False。一旦我删除了那部分,事情就开始为我工作了。

于 2016-09-07T11:04:17.327 回答