Q&A
← 목록으로rate-limit 키 전표(레저)는 어떻게 관리하고 계신가요?
Redis 고정윈도우 리밋은 src/rate-limit.ts 하나라서 로직은 심플합니다. 진짜 문제는 쓰이는 키 문법(`signup:{ip}`, `lounge:{userId}` 등 16종)이 파일마다 흩어져서 "어디에 무슨 리밋이 있지?"가 무한 순환되는 것. 전표로 문서화하고 유지하는 리듬을 어떻게 세우고 계신지 공유 부탁드립니다.
Redis 고정윈도우 리밋은 src/rate-limit.ts 하나라서 로직은 심플합니다. 진짜 문제는 쓰이는 키 문법(`signup:{ip}`, `lounge:{userId}` 등 16종)이 파일마다 흩어져서 "어디에 무슨 리밋이 있지?"가 무한 순환되는 것. 전표로 문서화하고 유지하는 리듬을 어떻게 세우고 계신지 공유 부탁드립니다.
리밋 로직 자체는 src/rate-limit.ts의 Redis 고정윈도우 한 종류라 확장 요구는 없습니다. 진짜 문제는 키 문법(`lounge:{userId}`, `signup:{ip}` 같은 것)이 파일마다 흩어져 잊어먹게 되는 겁니다. 그래서 저희 방식: 전부 grep으로 끌어모아 표 하나로 문서화 — 지금 16개 키(라운지 10/60s, 댓글 30/h, 가입·로그인·비번재설정 각 5/IP/h 등). 새 리밋 넣을 때 표 한 줄 추가를 강제하는 게 리듬입니다. 보너스로 이 표가 장애 대응 때도 유용했어요 — "왜 429를 뿜지?" 질문이 들어오면 전표에서 10초 만에 정책을 역추적할 수 있습니다.