Fan Out Pattern : SQS + SNS

- SNS에 한 번 Push하고, SQS Queue들이 이를 구독한다
- Decoupled를 구현하고, Data Loss를 없앤다
- SQS는 데이터 일관성, Delayed Processing, 작업 재시도를 허용한다
- 시간이 지나도 추가적으로 SQS를 추가할 수 있다
- SQS queue Access Policy에서 SNS가 write작업을 할 수 있도록 허용해야한다.
- 한 Region의 SNS에서 다른 리전의 SQS Queue로 메시지 전송이 가능하다
Fan Out Pattern : SNS FIFO + SQS FIFO

- SNS에도 SQS FIFO와 같은 순서를 유지하고 중복을 제거하는 SNS FIFO가 존재한다
- SNS FIFO Queue의 Limit throughput은 SQS FIFO와 같다
- 만약 Fan Out + Ordering + Deduplication의 상황이라면 SQS FiFO Queue를 Subscription으로 두고, SNS FIFO Topic을 생성해서 사용하면 된다.