Users expect live dashboards, chat, notifications, and collaborative edits. HTTP polling is a bridge; WebSockets and SignalR are the highway — if you design connection lifecycle and backplane correctly.
When to Use SignalR
Server-push to browsers and mobile clients, group subscriptions (teams, rooms, tenants), and fallback transports handled for you. Raw WebSockets when you need a custom binary protocol — not for standard CRUD apps.
Scale-Out with a Backplane
Redis or Azure SignalR Service routes messages across instances. Sticky sessions alone break the moment you add a second node. Plan horizontal scaling before launch, not after the first viral demo.
Auth and Isolation
JWT or cookie auth on negotiate; authorize group joins server-side; never trust client-supplied tenant IDs without verification. Rate-limit connection storms during incidents.
Resilience
Automatic reconnect with client-side state recovery, heartbeat detection, and graceful degradation to polling when proxies block WebSockets. Real-time features should fail soft — core app still works.