4

I have signalR application which has 5000 clients are connected to server. My client doesn't have any control to send a message or anything. my client is sending a 5 digit message to clients.

my question is if 5000 clients are connected to SignalR server what would be throughput bandwidth is required for my server.

Shachaf.Gortler
  • 5,655
  • 14
  • 43
  • 71
  • This will be affected by literally every part of your application- it's recommended that you loadtest your application to determine this sort of thing. Here are a few resources: http://channel9.msdn.com/Events/Build/2013/3-502 http://www.asp.net/signalr/overview/signalr-20/performance-and-scaling/signalr-performance The SignalR codebase also includes a load testing application called Crank- you can get the codebase here: https://github.com/SignalR/SignalR/archive/master.zip – Patrick Fletcher Dec 26 '13 at 23:14

2 Answers2

3

This can be calculated like so :

(Max Size of message) * (Max frequency of message) * (Max Number of clients)

For example, let's say a message size is 1 Kb. With 1 message per second and 5000 clients, this will result in a required bandwidth of 5 megabytes/second (~40 megabits per second network speed). This is the maximum bandwidth needed for peak processing.

You needed to create a load scenario in your application to see the exact numbers.

Michael Earls
  • 1,467
  • 1
  • 15
  • 25
Shachaf.Gortler
  • 5,655
  • 14
  • 43
  • 71
1

In addition to @Schachaf.Gortler's great answer, consider that there may be additional HTTP overhead for SignalR communications that will vary depending on what method it uses to communicate (WebSockets or a fallback technology).

See Using Fiddler with SignalR to see how to get the actual size of a raw message for your application.

Michael Earls
  • 1,467
  • 1
  • 15
  • 25