[Celery] Redis 로 token-bucket 알고리즘 적용하여 전송속도(rate limit) 조절하기
By 양파개발자 SW의 블로그입니다^^ | 2020년 7월 7일 |
현재 나는 Celery 기반으로 푸시를 전송하는 시스템을 관리하고 있다.측정해보니... 현재는 대략 초당 4000개의 푸시를 전송하고 있다. (5분에 120만 전송) 이렇게 순식간에 많은 푸시가 나가면,, 서비스에 무슨 영향이 있을까?아래 사항들을이 일단 고려되어야 한다. - 푸시를보낼 때, 단순 전송 처리 외, 다른 부수작업을 할 경우, 그 부수작업과 연관된 인프라 또는 서비스가 내 속도(=트래픽)를 받아줄 수 있는지 확인 - 푸시를 발송하면 유저들이 푸시를 누르고 앱에 접속하게 되는데, 이때 앱이 켜지고나서 진입하는 화면이 유저들의 트래픽을 받아줄 수 있는지 확인 우리 서비스의 경우, 위 항목충 2번째에 문제가 생겨, 전송속도 조절이 필요하다는 결론이 났다.그래서 이를 어떻게 구현해야