wscat 과 websocat 으로 수동 시험하기
수동 WebSocket 시험에는 두 명령줄 도구가 뛰어나. Node.js 기반 wscat 은 가장 친절하고, Rust 기반 websocat 은 사용자 지정 헤더, TLS, 하위 프로토콜, 바이너리 프레임까지 지원해 가장 강력해. 둘 다 도구함에 넣어 둬.
k6 로 부하 시험하기
k6 에는 WebSocket 을 정식으로 지원하는 모듈이 있어. JavaScript 로 시험을 작성하고 가상 사용자를 점차 늘려 서버에 동시 연결 수천 개를 밀어 넣을 수 있지. 결과에는 연결 속도, 메시지 처리량, 오류율, 지연 시간 백분위가 포함돼. 운영 변경 전마다 실행해.
운영에서 관측할 다섯 가지 지표
서버별 활성 연결 수, 들어오고 나가는 초당 메시지 수, 연결 지속 시간 분포, 닫기 코드 히스토그램, 심박 왕복 지연의 p95 를 추적해. 1006 이 갑자기 늘면 문제가 있다는 뜻이야. Prometheus 나 사용하는 관측 체계에 연결하고 절대 기준보다 평소와 다른 이상 징후에 경보를 걸어.