WebSocket 완전 정복 7편 — 제어 프레임: Ping/Pong 하트비트와 Close 코드
half-open 연결과 유휴 타임아웃 때문에 하트비트가 필요한 이유, ws로 구현하는 서버 주도 Ping/Pong과 주기를 정하는 기준, 그리고 1000부터 4999까지 Close 코드 표와 실무에서 가장 흔한 1006의 원인을 다룹니다.
blog92@web:~$ grep -rl "#Troubleshooting" posts/
이 태그가 달린 글
half-open 연결과 유휴 타임아웃 때문에 하트비트가 필요한 이유, ws로 구현하는 서버 주도 Ping/Pong과 주기를 정하는 기준, 그리고 1000부터 4999까지 Close 코드 표와 실무에서 가장 흔한 1006의 원인을 다룹니다.
main에 직접 커밋·push, reset --hard로 날린 커밋, 잘못된 브랜치 작업, 동료의 force push, .env 커밋, 감당 안 되는 충돌, detached HEAD, push 거부, 잘못된 작성자, 대용량 파일까지 실제로 터지는 12가지 상황의 복구 절차를 다룹니다.
HEAD 참조 표기법과 상황별 되돌리기 맵, reset 세 모드가 무엇을 지우는지, push한 커밋에는 왜 revert가 유일한 정답인지, reflog로 날린 커밋을 되살리는 법과 그 한계, stash·clean·restore의 위험도를 다룹니다.
이름 해석부터 애플리케이션 로직까지 아래에서 위로 올라가는 진단 순서와, 각 단계에서 쓰는 명령어(nc·ss·curl -w·tcpdump·mtr·openssl), 브라우저 DevTools 활용법, 증상별 원인 사전을 담았다.
error while loading shared libraries가 떴을 때 무엇을 봐야 하는가. .so 파일의 정체, 동적 링커의 탐색 순서, ldd·readelf·LD_DEBUG로 의존성을 추적하는 법까지.
서버가 죽었을 때 실제로 치는 명령어들. systemd, journalctl, 포트 점유 추적, 디스크 풀 대응, 컨테이너 운영까지 상황별로 정리.