Redis로 Rate Limiting 구현하기
·
Development & Projects
AI 분리배출 애플리케이션 "이건 여기"를 개발할 때 Redis를 이용해서 Rate Limit을 구현했던 과정을 기록해 보려고 합니다. 애플리케이션 내 설명 모드는 사용자가 질문을 하고 질문하기 버튼을 누르면 서버의 Prompt Engineering 기반으로 학습된 Gemini가 응답을 생성하는 구조였습니다. 이때 Gemini API를 연결해두었기 때문에 사용자가 질문하기 버튼을 무한클릭하게 된다면 그만큼 API 호출이 폭증하고 비용 폭탄을 맞게될 것입니다. 또한 Rate Limiting은 DDoS 공격을 막는 보안 장치로서도 매우 중요합니다. 누군가 의도적으로 짧은 시간 안에 수백, 수천 번의 요청을 보내면 Gemini API뿐 아니라 서버 전체가 마비될 수 있는 위험이 있기에, 이러한 트래픽 폭주..