Blog

Socket.IO with Redis adapter: CORS across multiple Node servers, sticky sessions, and polling fallbacks

Engine.IO transports must share CORS settings on every node—sticky load balancing keeps sessions coherent with WebSocket upgrades.

1 min read
socket.iorediscors

Namespaces

Different namespaces may need different `origins` callbacks—avoid one global wildcard in regulated industries.

Admin namespaces should not be reachable from public SPAs without extra auth.

Redis cluster

Pub/sub channel saturation looks like disconnect storms—monitor separately from CORS errors.

Failover during Redis migration can drop messages—surface user-visible reconnect banners.

Back to blog