Azure / azure-signalr

Azure SignalR Service SDK for .NET
https://aka.ms/signalr-service
MIT License
427 stars 101 forks source link

Serverless: Extremely unreliable broadcast until restart after burst of simultaneous broadcasts (10+/s) #732

Open stephenvisser opened 5 years ago

stephenvisser commented 5 years ago

Background:

We are aware of the guidance here that states broadcast messages via the REST API should not exceed a rate of 2/s.

Our average message rate over the course of a minute will typically be well below 1/s. The strange thing for us is that even if we have a burst of 10 or more messages in a given second, this by itself is not sufficient to create the issue. It can be days or weeks before we see this 'limp mode'.

ccic commented 5 years ago

If you guess there are stability issue, could you please run this benchmark on serverless broadcast?

dotnet tool install --global Microsoft.dotnet-signalr-benchmark --version 1.0.0-preview2.19521.1

using the following YAML:

mode: simple
config:
  connectionString: Endpoint=https://xxx;AccessKey=xxx
  connections: 100
  baseSending: 1
  step: 1
  sendingSteps: 1
scenario:
  name: restBroadcast

More details about the benchmark tool can be found: https://github.com/Azure/azure-signalr-bench