TECH NOTES
기술노트
현장에서 검증된 개발 지식을 기록합니다.
654321
Infra
nginx 502 Bad Gateway, 원인부터 잡기
502는 nginx가 업스트림(앱)에서 정상 응답을 못 받았다는 뜻. 앱 다운·소켓 경로·타임아웃·권한 순으로 점검한다.
Backend
Node.js 메모리 누수 찾기 — 힙 스냅샷 실전
시간이 지날수록 메모리가 계속 오른다면 누수다. 전역 캐시·이벤트 리스너·클로저가 단골 범인. 힙 스냅샷 비교로 추적.
Backend
Node.js EADDRINUSE, 포트가 이미 사용 중일 때
"address already in use :3000" 에러 해결. 점유 프로세스 찾아 종료, 우아한 종료(graceful shutdown)로 재발 방지.
Frontend
Tailwind 클래스가 안 먹힐 때 체크리스트
content 경로 누락, 동적 클래스 문자열 조합, 빌드 캐시. Tailwind가 클래스를 못 찾아 purge하는 흔한 원인들.
Frontend
TypeScript "Type X is not assignable" 자주 만나는 5가지
가장 흔한 타입 에러를 패턴으로 정리. union 좁히기 누락, as const, 인덱스 시그니처, 함수 매개변수 반공변성까지.
Frontend
React useEffect 무한 루프, 왜 생기고 어떻게 끊나
useEffect 무한 루프의 99%는 의존성 배열 안에 매 렌더마다 새로 만들어지는 객체·함수가 들어가서다. 원인 3가지와 해결법.