728x90
Amazon Simple Queue Service (SQS)
메시징
메시징은 애플리케이션 간의 통신을 위해 사용되는 매개체이며,
Amazon SQS는 이러한 메시징을 비동기식으로 처리하는 서비스입니다.
메시징의 정의와 필요성
- 애플리케이션 간 통신을 위한 메시지 교환 과정
- 주문 처리 애플리케이션과 배송 관리 애플리케이션 간의 통신 등을 예로 들 수 있음.
- 동기식과 비동기식 통신 방법을 사용할 수 있음.
- 비동기식 통신에서는 Queue를 매개체로 사용하여 메시지를 주고받음.
Simple Queue Service (SQS) 개요
- 애플리케이션 간의 직접적 통신이 아닌 Queue를 이용한 비동기식 메시징 시스템임.
- 메시지 생산자가 생성한 메시지를 Queue에 저장하고, 메시지 소비자가 이를 수집함.
- 처리량과 메시지 수에 제한이 없음.
SQS의 동작 과정
- 메시지 생성 과정: 애플리케이션 1이 SDK를 활용해 메시지를 큐에 저장함.
- 메시지 소비 과정: 애플리케이션 2가 Queue를 열어 자신에게 온 메시지를 확인하고 처리함.
- 메시지 삭제 과정: 애플리케이션 2가 SDK를 활용해 처리한 메시지를 큐에서 삭제함.
Queue 유형
- Standard Queue: 무제한 요청 처리와 최소 한 번의 메시지 전송을 보장하지만, 순서는 보장하지 않음.
- FIFO Queue: 선입선출 방식으로 메시지 순서를 보장하며, 중복 전송이 발생하지 않음.
중복 전송과 메시지 가시성 시간 제한
- 메시지는 최소 한 번 전송되며, 소비자가 처리하는 동안 다른 소비자에게는 보이지 않음.
- Message Visibility Timeout을 설정하여 다른 소비자가 메시지를 볼 수 없도록 함.
Long Polling
- Queue가 비어 있을 때, 소비자가 메시지가 도착할 때까지 기다리는 기능임.
- API 호출 횟수 감소와 지연 시간 단축을 위해 사용됨.
메시지 암호화
- HTTPS API와 KMS Key를 이용해 메시지 암호화를 지원함.
- IAM Policy를 통해 SQS API 접근을 제어할 수 있음.
출처 : Udemy_AWS Solutions Architect C03 강의
hwanyoung12
728x90
'자격증 > AWS SAA' 카테고리의 다른 글
[AWS SAA] Kinesis (0) | 2024.02.04 |
---|---|
[AWS SAA] SNS (0) | 2024.02.04 |
[AWS SAA] Auto Scaling (EC2) (0) | 2024.02.02 |
[AWS SAA] ELB (0) | 2024.02.02 |
[AWS SAA] ELB (0) | 2024.01.31 |