【发布时间】:2017-01-27 20:43:35
【问题描述】:
我在 AWS EC2 中有 SignalR 服务。 我想用 Redis 引擎 Elasticache 设置背板。 我可以使用redis-cli工具成功连接SignalR服务器中的Easticache。
C:\>redis-cli -h server.cache.amazonaws.com -p 6379 ping
PONG
但是当我把backpalne设置代码,SignalR返回
SignalR:尝试连接时 webSockets 传输超时。
无背板设置代码
GlobalHost.DependencyResolver.UseRedis(server, port, string.Empty, appName);
效果很好。
错误信息如下
[03:31:21 GMT+0000(协调世界时间)] SignalR:正在与 'http://server.elb.amazonaws.c...Protocol=1.5&connectionData=%5B%7B%22name%22%3A%22notificationhub% 协商22%7D%5D'.VM47 jquery.signalR-2.2.0.min.js:8 [03:31:28 GMT+0000(协调世界时间)] SignalR:webSockets 传输开始。 VM47 jquery.signalR-2.2.0.min.js:8 [三时31分28秒GMT + 0000(协调通用时间)] SignalR:连接到的WebSocket端点“WS://server.elb.amazonaws.com/signalr/connect运输=&的WebSockets clientProtocol = 1.5&connectionToken = xSWImxTslxzzk4toiMzjuNod56GaOF27NaT1t1ZkACbNqMC%2BhVRvEFtc2MesygYDRY1ULm%2BtFSo4djNegjcNtuD6lpk1pQQ7ecVZoLFr6aPJ %2FP0HHhUmAjgOVs1FyqQt&connectionData=%5B%7B%22name%22%3A%22notificationhub%22%7D%5D&tid=9'。 VM47 jquery.signalR-2.2.0.min.js:8 [03:31:28 GMT+0000(协调世界时间)] SignalR:webSockets 传输开始。 VM47 jquery.signalR-2.2.0.min.js:8 [03:31:33 GMT+0000(协调世界时间)] SignalR:尝试连接时 webSockets 传输超时。 VM47 jquery.signalR-2.2.0.min.js:8 [03:31:33 GMT+0000(协调世界时间)] SignalR:关闭 Websocket。 的index.html#/简介:1个WebSocket连接到“WS://server.elb.amazonaws.com/signalr/connect运输=&的WebSockets clientProtocol = 1.5&connectionToken = xSWImxTslxzzk4toiMzjuNod56GaOF27NaT1t1ZkACbNqMC%2BhVRvEFtc2MesygYDRY1ULm%2BtFSo4djNegjcNtuD6lpk1pQQ7ecVZoLFr6aPJ%2FP0HHhUmAjgOVs1FyqQt&connectionData =%5B%7B%22name%? 22%3A%22notificationhub%22%7D%5D&tid=9' 失败:在建立连接之前关闭 WebSocket。 VM47 jquery.signalR-2.2.0.min.js:8 [03:31:33 GMT+0000(协调世界时间)] SignalR:Websocket 已关闭。更新
我在服务器本地安装redis后,出现了同样的问题。 看起来不是 AWS Elasticache 问题。
【问题讨论】:
-
尝试在本地运行服务器连接到 AWS 上的 Redis 并检查您的服务器中是否有任何异常。
-
谢谢,我安装了本地Redis,出现webSockets传输超时问题。这不是 AWS Elasticache 问题。但我的服务器也不例外。
-
我们的想法不是在本地安装 Redis,而是在 AWS 上使用 Redis 和在本地运行的 SignalR 服务器,如果遇到同样的问题,排除故障会容易得多。
-
对不起,我的意思是我在带有 SignalR 服务器的 AWS EC2 实例上安装了 Redis。
标签: javascript amazon-web-services redis signalr