RabbitMQ 지연큐 적용하기
큐를 쌓는 api를 개발했는데, 한번의 호출에 N개의 큐가 쌓여진다. 이때 N의 수가 클 경우 큐가 너무 많이 쌓여졌고 컨슈머 쪽에서 처리량이 너무 많아지고 악순환을 만들어냈다. 이를 해결하기 위해 주어진 미션은 다음과 같다. 🧡 미션 큐에 쌓을때 (M, M*2, M*3, ..., M*N )초의 지연을 주자. 예를 들어 M을 5초로 잡았을때, 한번의 api 에서 4개의 큐가 쌓이게 되면 지연을 5초, 10초, 15초, 20초 간격으로 줘야 한다 🧡 구현 방법 먼저 지연 시간 전 값을 저장할 임시 큐와, 지연 시간 이후 실제 consumer가 값을 읽어고 처리할 real 큐가 필요하다. temp Q에서 만료시간이 끝나면 real Q로 값을 넣어줘야 한다. 이 기능은 rabbitMQ 에서 x-dead-let..