Search code examples
c#.netazuresignalrazure-signalr

Azure Signal with multiple Application Servers


I have a working implementation with a website which communicates with an Azure SignalR service. I have created an App which I would like to integrate with the same SignalR service, but I am unable to get the App and the Website to be able to communicate with each others clients. What I would like is for messages sent by the Website to be able to communicate with the App using the same Azure SignalR Service.

enter image description here

I have added a simple overview of the environment. Reading the Microsoft Article on Azure SignalR (https://learn.microsoft.com/en-gb/azure/azure-signalr/signalr-howto-use#scale-out-application-server) the second bullet point mentions that if different application servers wish to be grouped in the same hub, then you can set them to use the same Application Name, however, the third point says that Client Connections are grouped by Application Servers only.

I am confused for 2 reasons:

  1. If Clients are grouped by Application Server, what is the benefit of grouping Application Servers into a single hub on the Azure SignalR Service?
  2. The website is an App Service that can have numerous instances, and this works, which means that the Azure Service is able to handle a SignalR Service sending messages between clients on different Application Servers.

One last thing to add is that the website is using old .NET Framework, whereas the API using newer .NET 8, so the libraries they are using are slightly different.

Am I missing something?

Any input or thoughts are welcome, thanks!


Solution

  • I ended up getting nowhere with this, so I used a single Hub on the API, and updated the Website to use that instead.