Wat is Azure SignalR? #
Azure SignalR Service is een beheerde service die wordt aangeboden door Microsoft Azure en die de integratie van realtime communicatiefuncties in web- en mobiele applicaties vergemakkelijkt. Door gebruik te maken van de SignalR-bibliotheek maakt het bidirectionele instant messaging tussen clients en servers mogelijk. De service is ontworpen om de ontwikkeling van applicaties die realtime updates vereisen, zoals chatapplicaties, multiplayer-games en samenwerkingstools, te vereenvoudigen door de onderliggende infrastructuurcomplexiteiten aan te pakken. Azure SignalR Service blinkt ook uit in schaalbaarheid, waardoor het zich automatisch kan aanpassen aan wisselende werklasten en ervoor zorgt dat applicaties responsief blijven tijdens perioden met veel verkeer.
Deze service ondersteunt een breed scala aan klantplatforms, waardoor deze geschikt is voor platformonafhankelijke ontwikkeling, waaronder web-, mobiele, desktop- en IoT-applicaties. Het biedt robuuste mogelijkheden voor verbindingsbeheer, vereenvoudigt het volgen van de aanwezigheid van gebruikers en het verwerken van verbindingen, en bevat beveiligingsfuncties om realtime communicatie te beveiligen. Bovendien kan de Azure SignalR Service naadloos worden geïntegreerd met andere Azure-services en applicaties van derden, waardoor het een veelzijdige keuze is voor ontwikkelaars die realtime functionaliteit in hun applicaties willen integreren en tegelijkertijd willen profiteren van de cloudinfrastructuur van Azure.
Waarom is het belangrijk om de taakverdeling van Azure SignalR te verdelen? #
De taakverdeling van een Azure SignalR-service is om verschillende redenen belangrijk. Het zorgt in de eerste plaats voor een hoge beschikbaarheid en betrouwbaarheid van real-time communicatie binnen uw applicaties. Door binnenkomende verbindingen en verkeer te verdelen over meerdere exemplaren van de Azure SignalR Service, voorkomt taakverdeling dat één exemplaar overweldigd raakt, waardoor het risico op serviceonderbrekingen als gevolg van overbelasting of mogelijke storingen wordt verkleind. Dit is vooral cruciaal voor applicaties die afhankelijk zijn van realtime updates, omdat downtime of slechte prestaties kunnen resulteren in een negatieve gebruikerservaring.
Ten tweede helpt de taakverdeling van de Azure SignalR Service de prestaties en schaalbaarheid te optimaliseren. Azure SignalR Service is ontworpen om automatisch te schalen op basis van de vraag, en het gebruik van load balancers kan deze schaalbaarheid verbeteren. Wanneer het verkeer toeneemt, kan de load balancer verbindingen naar extra service-instanties routeren, zodat uw applicatie blijft reageren tijdens verkeerspieken. Omgekeerd kan het ook verkeer wegleiden van onderbenutte instanties, waardoor kosten worden bespaard. Over het geheel genomen is de taakverdeling van de Azure SignalR-service een fundamentele praktijk voor het handhaven van consistente prestaties, hoge beschikbaarheid en efficiënt resourcegebruik in realtime communicatietoepassingen die worden gehost op het Azure-platform.
Configureer Sticky Sessions of Session Affinity in de load balancer #
In RELIANOID Load Balancer, het configureren van sticky-sessies voor SignalR is heel eenvoudig. Als een HTTP-farm wordt gebruikt, Volharding by IP-clientadres kan worden ingeschakeld in de SignalR-service. Ook, Cookie-invoeging kan worden gebruikt voor een meer uitgebreide affiniteit waarbij de load balancer een cookier per gebruiker heeft aangemaakt.

Voor L4-farms kan ook een sticky session worden geconfigureerd door persistentie in te stellen op basis van het bron-IP-adres.

Bij alle soorten persistentie is er een time-out die het verstrijken van een dergelijke sessie aangeeft als de client de virtuele service niet meer aanvraagt. Een dergelijke waarde zal afhangen van de werkelijke bruikbaarheid van de applicatie, maar waarden van 60 tot 120 seconden kunnen over het algemeen een goede optie zijn.