| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | |
| 7 | 8 | 9 | 10 | 11 | 12 | 13 |
| 14 | 15 | 16 | 17 | 18 | 19 | 20 |
| 21 | 22 | 23 | 24 | 25 | 26 | 27 |
| 28 | 29 | 30 |
- @Transactional
- CORS
- AWS
- JPA
- Dead Letter Queue
- JPQL
- mybatis
- redis
- Spring Data JPA
- JWT
- 서블릿 컨테이너
- @ComponentScan
- MSA
- Spring
- 페이징
- 스프링 부트
- JdbcTemplate
- kafka
- 쿠버네티스
- DLQ
- Routing Key
- 컨테이너
- docker
- 지연 로딩
- Spring Container
- docker compose
- dockerhub
- DI
- securitycontextholderfilter
- Web
- Today
- Total
목록DLQ (3)
look-forest
Dead Letter Queue와 Dead Letter ExchangeDLQ (Dead Letter Queue)실패한 메시지가 저장되는 큐. 메시지가 큐에서 제대로 처리 되지 못할 경우 DLQ로 이동됨. DLQ로 이동하는 경우NACK 처리나 거부: basic.reject 혹은 basic.nackTTL 만료Overflow: 큐에 설정된 최대 메시지 갯수를 초과하면 가장 오래된 메시지가 삭제되고 DLQ로 이동DLX (Dead Letter Exchange)실패한 메시지를 어디로 보낼지 라우팅하는 Exchange. DLQ로 바로 보내는 것이 아니라 RabbitMQ는 Exchange를 통해 라우팅한다. 전체 구조Producer ↓ Exchange ↓ OrderQueue ↓ (reje..
Exchange 유형에 따른 처리 흐름1. Direct Exchange메시지를 발행할 때 사용하는 라우팅 키와 동일한 키로 익스체인지에 바인딩 된 모든 큐에 메세지를 전달.해당 라우팅 키와 일치하는 큐에만 메시지가 전달되는 방식이기 때문에 Direct Exchange 라고 한다.매핑이 정확하게 되는 한개의 키만 있으니까 1:1로 가능할거 같은데, 하나의 라우팅 키에 대해 여러 큐가 바인딩될 수 있기 때문에 1:N 매칭이 가능하다. 활용메시지가 명확하게 특정 큐로 전달되어야 할 때 큐마다 고유한 라우팅 규칙을 적용하여 메시지를 분류해야 할 때 예시 업무: 주문 상태 처리, 결제 처리, 사용자 알림 시스템 등- 주문 상태별로 라우팅 키를 정의하고, 각 상태에 해당하는 큐가 메시지를 받는다 2. Topic E..
개요RabbitMQ는 메시지 브로커이다. 애플리케이션 사이에서 메시지를 받아서 적절한 Queue로 라우팅하고 Consumer에게 전달하는 중간 서버이다. 시스템 간 비동기 메시징을 가능하게 하여 서비스 간 통신을 안정적이고 효율적으로 처리할 수 있게 해준다.최근 MSA 환경에서 가장 일반적으로 쓰이는 기술 중 하나이며, 대량의 데이터 전송 시 발생할 수 있는 과부화를 분산시키며비동기 처리와 지연이 필요한 작업을 효과적으로 관리해 줄 수 있다.클러스터를 설정할 때 큐를 HA(High Available)로 설정하여 여러 노드에 저정함으로써 메시지 손실을 방지하고, Federation 플러그인을 통해 데이터 동기화와 다중 마스터 복제를 구성할 수도 있다. 메세지큐를 사용하는 이유비동기 메시지를 사용하여 다른 ..