Sticky-session 문제
WebSocket connection 이 persistent + stateful — 특정 서버 프로세스에 살아. 클라가 reconnect 시 session, room 멤버십, auth context 기억 없는 다른 서버 hit 할 수 있음. Sticky session 이 같은 클라의 reconnect 가 같은 서버 도달 보장.
세 sticky 전략
IP hash: 가장 단순, cookie 안 필요, shared NAT (대학 wifi, corporate VPN) 에선 깨짐. Cookie-based affinity: 정확, 근데 cookie 가 첫 WebSocket upgrade 시간에 항상 set 안 됨. Connection-aware (least-conn): 균등 분배, 근데 affinity 없음 — 서버가 stateless 거나 Redis bridge 가 보완할 때만 좋음.