SignalR负载均衡配置要点
Posted microsoft-xin
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SignalR负载均衡配置要点相关的知识,希望对你有一定的参考价值。
SignalR负载均衡配置要点:
1、使用 Redis 的 SignalR 横向扩展
1)从Nuget添加SignalR. StackExchangeRedis包到项目中
2)将以下代码添加到 Startup.cs 以配置底板:
public class Startup { public void Configuration(IAppBuilder app) { // Any connection or hub wire up and configuration should go here GlobalHost.DependencyResolver.UseStackExchangeRedis("server", port, "password", "AppName"); app.MapSignalR(); } }
说明:
- "服务器" 是运行 Redis 的服务器的名称。
- 端口号 是运行 Redis 的服务器的端口号。
- "密码" 是在 redis 文件中定义的密码。
- "AppName" 是任意字符串。 SignalR 创建具有此名称的 Redis pub/sub 通道。
如:
GlobalHost.DependencyResolver.UseStackExchangeRedis("redis-server.cloudapp.net", 6379, "MyStrongPassword1234", "ChatApp");
2、在nginx中配置反向代理服务器信息:
http { map $http_upgrade $connection_upgrade { default upgrade; ‘‘ close; } upstream websocket { server 192.168.100.10:8010; server 192.168.100.10:8011; ip_hash; } server { listen 8020; location / { proxy_pass http://websocket; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection $connection_upgrade; } } }
https://docs.microsoft.com/zh-cn/aspnet/signalr/overview/performance/scaleout-with-redis
以上是关于SignalR负载均衡配置要点的主要内容,如果未能解决你的问题,请参考以下文章