자격증/AWS SAA

[AWS SAA] SQS

14ben 2024. 2. 2. 17:51
728x90

Amazon Simple Queue Service (SQS)
메시징

메시징은 애플리케이션 간의 통신을 위해 사용되는 매개체이며,
Amazon SQS는 이러한 메시징을 비동기식으로 처리하는 서비스입니다.

메시징의 정의와 필요성

  • 애플리케이션 간 통신을 위한 메시지 교환 과정
  • 주문 처리 애플리케이션과 배송 관리 애플리케이션 간의 통신 등을 예로 들 수 있음.
  • 동기식과 비동기식 통신 방법을 사용할 수 있음.
  • 비동기식 통신에서는 Queue를 매개체로 사용하여 메시지를 주고받음.

Simple Queue Service (SQS) 개요

  • 애플리케이션 간의 직접적 통신이 아닌 Queue를 이용한 비동기식 메시징 시스템임.
  • 메시지 생산자가 생성한 메시지를 Queue에 저장하고, 메시지 소비자가 이를 수집함.
  • 처리량과 메시지 수에 제한이 없음.

SQS의 동작 과정

  1. 메시지 생성 과정: 애플리케이션 1이 SDK를 활용해 메시지를 큐에 저장함.
  2. 메시지 소비 과정: 애플리케이션 2가 Queue를 열어 자신에게 온 메시지를 확인하고 처리함.
  3. 메시지 삭제 과정: 애플리케이션 2가 SDK를 활용해 처리한 메시지를 큐에서 삭제함.

Queue 유형

  • Standard Queue: 무제한 요청 처리와 최소 한 번의 메시지 전송을 보장하지만, 순서는 보장하지 않음.
  • FIFO Queue: 선입선출 방식으로 메시지 순서를 보장하며, 중복 전송이 발생하지 않음.

중복 전송과 메시지 가시성 시간 제한

  • 메시지는 최소 한 번 전송되며, 소비자가 처리하는 동안 다른 소비자에게는 보이지 않음.
  • Message Visibility Timeout을 설정하여 다른 소비자가 메시지를 볼 수 없도록 함.

Long Polling

  • Queue가 비어 있을 때, 소비자가 메시지가 도착할 때까지 기다리는 기능임.
  • API 호출 횟수 감소와 지연 시간 단축을 위해 사용됨.

메시지 암호화

  • HTTPS API와 KMS Key를 이용해 메시지 암호화를 지원함.
  • IAM Policy를 통해 SQS API 접근을 제어할 수 있음.

 

 
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