At-Least-Once
-
이코에코(Eco²) Eventual Consistency #4: Blacklist Relay Worker 구현이코에코(Eco²)/Eventual Consistency 2025. 12. 30. 15:35
1. 전체 디자인1.1 시스템 개요①auth-api → RabbitMQ정상 발행 (99%+)②auth-api → RedisMQ 실패 시 Outbox 적재③Redis → auth-relay1초마다 폴링④auth-relay → RabbitMQOutbox 이벤트 재발행⑤RabbitMQ → ext-authzFanout 브로드캐스트1.2 데이터 흐름단계컴포넌트동작①Redis BlacklistSETEX token:blacklist:{jti} {ttl}②Publisherbasic_publish() 시도③Outbox → Relay실패 시 LPUSH → RPOP → republish④RabbitMQFanout 브로드캐스트⑤ext-authzcache.Store(jti, entry) 2. 주요 컴포넌트2.1 컴포넌트 의존성..