FIFO 주제에 대한 Amazon SNS 메시지 필터링 - Amazon Simple Notification Service

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

FIFO 주제에 대한 Amazon SNS 메시지 필터링

Amazon SNS FIFO 주제는 메시지 필터링을 지원합니다. 메시지 필터링을 사용하면 게시자 시스템의 메시지 라우팅 논리와 구독자 시스템의 메시지 필터링 논리를 오프로드하여 아키텍처가 단순화됩니다.

SNS FIFO 주제에 대한 Amazon SQS FIFO 또는 표준 대기열을 구독하는 경우 메시지 필터링을 사용하여 구독자가 모든 메시지 대신 메시지 하위 집합을 수신하도록 지정할 수 있습니다. 각 구독자는 자체 필터 정책을 구독 속성으로 설정할 수 있습니다. 필터 정책 범위에 따라 필터 정책을 수신 메시지 속성 또는 메시지 본문과 일치시킵니다. 필터 정책이 일치하는 경우 주제는 구독자에게 메시지 복사본을 전달합니다. 일치하는 항목이 없으면 주제는 메시지 복사본을 전송하지 않습니다.

자동차 부품 가격 관리 예제 사용 사례에서 다음 Amazon SNS 필터 정책이 설정되고 필터 정책 범위가 라고 가정합니다MessageBody.

  • 도매 대기열의 경우 필터 정책 {"business":["wholesale"]}은 이름이 business인 키와 값 집합의 wholesale이 포함된 모든 메시지를 일치시킵니다. 다음 다이어그램에서 메시지 m1의 키 중 하나는 값이 wholesalebusiness입니다. 메시지 m3의 키 중 하나는 값이 ["wholesale,retail"]business입니다. 따라서 m1m3은 모두 필터 정책의 기준과 일치하며 두 메시지 모두 도매 대기열로 전달됩니다.

  • 소매 대기열의 경우 필터 정책 {"business":["retail"]}는 이름이 business인 키와 값 집합의 retail이 포함된 모든 메시지를 일치시킵니다. 다이어그램에서 메시지 m2의 키 중 하나는 값이 retailbusiness입니다. 메시지 m3의 키 중 하나는 값이 ["wholesale,retail"]business입니다. 따라서 m2m3은 모두 필터 정책의 기준과 일치하며 두 메시지 모두 소매 대기열로 전달됩니다.

  • 분석 대기열의 경우 Amazon Athena가 모든 레코드를 수신하도록 할 것이므로 필터 정책이 적용되지 않습니다.

Amazon SNS FIFO 주제가 필터 정책을 사용하여 메시지 콘텐츠에 따라 다른 Amazon SQS 대기열로 메시지를 라우팅하는 방법의 예입니다. '비즈니스' 키가 '도매'로 설정된 메시지 m1 및 m3은 도매 대기열로 전달되고 '소매'가 지정된 메시지 m2는 소매 대기열로 라우팅됩니다. 이는 대상 메시지 전달을 보여주며, 각 구독자 함수가 관련 메시지만 수신하도록 하여 처리 효율성과 데이터 관련성을 최적화합니다.

SNS FIFO 주제는 속성 문자열 값, 속성 숫자 값 및 속성 키를 비롯한 다양한 일치 연산자를 지원합니다. 자세한 내용은 Amazon SNS 메시지 필터링 단원을 참조하십시오.

SNS FIFO 주제는 구독한 엔드포인트에 중복 메시지를 전달하지 않습니다. 자세한 내용은 FIFO 주제에 대한 Amazon SNS 메시지 중복 제거 단원을 참조하십시오.