In this video on channel9.mmsdn.com about SignalR, the lecturer does not recommend using Redis for applications that needs to deliver a very high amount of concurrent messages. He suggested other three theoratical alternatives but without any implementation guide. I want to how can I scale out Signalr on commudity machines on Amazon Web Services and/or whether there is already a ready open source solution available.
From asp.net:
Using a backplane, the maximum message throughput is lower than it is when clients talk directly to a single server node. That's because the backplane forwards every message to every node, so the backplane can become a bottleneck.
The lecturer explained in his lecture that Redis is can be the bottleneck. I am aware of the Windows Serve Service Bus on Windows Azure, but I intend to develop my project for AWS. Thanks.
A SignalR app can scale out based on the number of messages sent, while the Azure SignalR Service scales to handle any number of connections.
(In electronics, a backplane is a group of parallel connectors. By analogy, a SignalR backplane connects multiple servers.) SignalR currently provides three backplanes: Azure Service Bus.
The SignalR Redis backplane uses the pub/sub feature to forward messages to other servers. For this tutorial, you will use three servers: Two servers running Windows, which you will use to deploy a SignalR application. One server running Linux, which you will use to run Redis.
Depending on the kind of traffic you will be using SignalR for, you might be able to use the Redis Soution. The MSDN Documentation states that the only solution where the Redis Server would be a serious issue is for online gaming but for push scenarios or chat applications, you should be fine.
Scaleout in SignalR
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With