발행자를 건드리지 말고 구독자를 늘리세요
지금은 주문이 발생하면 메일 담당만 그 소식을 읽어갑니다.
마케팅팀에서 요청이 왔습니다. "주문이 들어올 때마다 쿠폰을 지급하고 싶습니다."
직접 호출 구조였다면 주문 서버 코드를 열어야 했을 겁니다. 발행-구독 구조에서는 그럴 필요가 없습니다. 주문 서버(발행자)와 주문 토픽은 잠겨 있습니다. 건드릴 수 없습니다. 그 상태 그대로 쿠폰 담당이 주문 소식을 읽어갈 수 있게 만드세요.
주문 서버는 이미 주문 토픽에 "주문이 발생했다"를 싣고 있습니다. 토픽은 실린 사건을 구독마다 사본으로 복제해 보냅니다. 그러니 토픽에 구독을 하나 더 붙이기만 하면 됩니다.
합격 조건
- 큐 2개 이상, 워커 2개 이상 (구독자마다 자기 큐를 하나씩 가집니다)
- 모든 구독이 실제로 사건을 받고 처리할 것
- 유실률 1% 미만
구독자마다 큐를 따로 두는 이유를 기억하세요. 큐를 함께 쓰면 한 구독자가 밀릴 때 다른 구독자까지 같이 밀립니다. 고장을 한 칸에 가두려면 칸이 나뉘어 있어야 합니다.
트래픽을 실행해 무엇이 깨지는지 먼저 확인한 다음, 설계를 고치고 검사하세요.
설정
컴포넌트를 선택하면 처리 용량이나 동작 방식을 바꿀 수 있습니다.