재학습/DB

Redis로 간단지연 큐 구현이 될까? (1) - 간단지연 큐란?

재이든 2022. 9. 26. 17:25
반응형

 

목표

회사에서 큐를 구현한다.

Redis를 사용한다.

회사 시스템측 이슈로인해 Redis Queue에 Push시 1분 대기시간이 필요하다.

이를 위한 시스템을 구상하는 과정에서 '간단지연 큐'를 발견하게되었다.

간단지연 큐는 무엇이고, 이것이 1분 대기시간이라는 요구사항이 충족할 수 있는 기능이라면 

Redis에서도 구현이 가능한지를 알아본다.

 

간단지연큐란?

메세지를

'보낸시간'이 아닌 '일정시간'이후에 받고싶은 경우에 사용한다.

RabbitMQ의 간단지연 큐

필요개념

exchange

-Producer에서 전달받은 메세지를 어느 Queuue에 전송할 지

결정하는 객체, 라우터개념

 

플러그인 사용

1.rabbitmq-delayed_message_exchange라는 플러그인을 통해

2.x-delayed-type 설정을 준 후

3,exchange를 생성

 

dead-letter exchange config 사용

-별도의 큐를 생성하여 구현하는 방법

아래 설정을 가진 큐 생성

- x-dead-letter-exchange : delay이후 메세지가전송될 exchange이름

- x-dead-letter-routing-key : exchange에서 사용될 라우팅 키

- x-message-ttl : delay시간

1.위로 생성된 지연큐에 메세지가 put되면

2.지연 후

3.x-dead-letter-exchange로 보낸다.

 

반응형

 

RabbitMQ에서는

플러그인으로 구현하거나, 

별도의 큐를 생성하여 구현한다.

 

그렇다면 Redis에서도 

1.지연큐를 지원하는 기능이 있는지

2.플러그인이 있는지

3.별도의 큐를 생성하여 구현할 수 있는지

 

를 알아보자

https://japing.tistory.com/entry/Redis로-간단지연-큐-구현이-될까-2-Redis의-지연-큐-구현

 

반응형