signalR的集群与负载均衡

Posted 漫漫洒洒

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了signalR的集群与负载均衡相关的知识,希望对你有一定的参考价值。

signalR是相当不错的websocket应用,最近要做集群和负载均衡

主要用到了redis进行集群,signalR的backplane集成redis。

细节,订阅redis之后注意database号

再使用nginx进行负载均衡。

细节,设置websocket(我是用websocket的传输)的配置参数,Upgrade 头的处理

http {
    map $http_upgrade $connection_upgrade {
        default upgrade;
        \'\' close;
    }

    upstream websocket {
        server 192.168.100.10:8010;
    }

    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/en-us/aspnet/signalr/overview/performance/scaleout-with-redis
https://www.nginx.com/blog/websocket-nginx/
http://www.cnblogs.com/liqiao/p/4396194.html

以上是关于signalR的集群与负载均衡的主要内容,如果未能解决你的问题,请参考以下文章

Azure 上的 SignalR 连接与负载均衡器

SignalR负载均衡配置要点

C# BS消息推送 负载均衡-SignalR&Redis的配置

集群分布式负载均衡区别与联系

Dubbo负载均衡与集群容错

集群分布式负载均衡区别与联系