4.13.2. dead letter 큐 자동 생성


일반적인 사용 사례는 원래 주소에 따라 배달되지 않은 메시지를 분리하는 것입니다. 예를 들어, 재고라는 주소에서 DLA. s tocks 라는 관련 dead letter 큐가 있는 배달 못 한 큐로 전송되지 않은 메시지를 라우팅 하도록 선택할 수 있습니다. 마찬가지로, 주문 이라는 주소에서 DLA.orders 라는 dead letter 주소로 배달되지 않은 메시지를 라우팅할 수 있습니다.

이러한 유형의 라우팅 패턴을 사용하면 배달되지 않은 메시지를 쉽게 추적, 검사 및 관리할 수 있습니다. 그러나 이러한 패턴은 주로 생성된 주소 및 대기열을 사용하는 환경에서 구현하기 어렵습니다. 이러한 유형의 환경에 대한 시스템 관리자는 배달되지 않은 메시지를 저장하기 위해 수동으로 주소 및 큐를 수동으로 생성하는 데 필요한 추가 노력을 원하지 않을 수 있습니다.

해결 방법으로 다음 절차에 표시된 대로 주소 및 큐를 자동으로 생성하여 배달되지 않은 메시지를 처리하도록 브로커를 구성할 수 있습니다.

사전 요구 사항

절차

  1. < broker-instance-dir> /etc/broker.xml 구성 파일을 엽니다.
  2. 일치하는 큐 또는 큐 세트에 대한 dead letter 주소를 정의하기 위해 이전에 추가한 <address-setting > 요소를 찾습니다. 예를 들면 다음과 같습니다.

    <configuration ...>
       <core ...>
          ...
          <address-settings>
             ...
             <address-setting match="exampleQueue">
                <dead-letter-address>DLA</dead-letter-address>
                <max-delivery-attempts>3</max-delivery-attempts>
             </address-setting>
          ...
          <address-settings>
    <configuration ...>
  3. < address-setting > 요소에서 브로커에 배달 못 한 문자 리소스(즉, 주소 및 큐)를 자동으로 생성하고 이러한 리소스의 이름을 지정하는 방법을 브로커에 지시하는 구성 항목을 추가합니다. 예를 들면 다음과 같습니다.

    <configuration ...>
       <core ...>
          ...
          <address-settings>
             ...
             <address-setting match="exampleQueue">
                <dead-letter-address>DLA</dead-letter-address>
                <max-delivery-attempts>3</max-delivery-attempts>
                <auto-create-dead-letter-resources>true</auto-create-dead-letter-resources>
                <dead-letter-queue-prefix>DLQ.</dead-letter-queue-prefix>
                <dead-letter-queue-suffix></dead-letter-queue-suffix>
             </address-setting>
          ...
          <address-settings>
    <configuration ...>
    auto-create-dead-letter-resources

    브로커가 배달되지 않은 메시지를 수신할 배달 못 한 주소 및 큐를 자동으로 생성할지 여부를 지정합니다. 기본값은 false입니다.

    auto-create-dead-letter-resourcestrue 로 설정된 경우 브로커는 dead letter 주소 와 관련 dead letter 큐를 정의하는 <address> 요소를 자동으로 생성합니다. 자동으로 생성된 < address > 요소의 이름은 < dead-letter-address >에 지정하는 name 값과 일치합니다.

    브로커가 자동 생성된 < address > 요소에서 정의하는 dead letter 큐에는 멀티캐스트 라우팅 유형이 있습니다. 기본적으로 브로커는 배달되지 않은 메시지의 원래 주소와 일치하도록 dead letter 큐의 이름을 지정합니다(예: stocks ).

    브로커는 또한 _AMQ_ORIG_ADDRESS 속성을 사용하는 dead letter 큐에 대한 필터를 정의합니다. 이 필터를 사용하면 dead letter queue가 해당 원래 주소로 전송된 메시지만 수신됩니다.

    dead-letter-queue-prefix

    브로커가 자동으로 생성된 배달 못 한 큐의 이름에 적용되는 접두사입니다. 기본값은 DLQ입니다.

    접두사 값을 정의하거나 기본값을 유지할 때 dead letter queue의 이름은 접두사와 원래 주소(예: DLQ.stocks )의 연결입니다.

    dead-letter-queue-suffix
    브로커가 자동으로 생성된 dead letter 큐에 적용되는 접미사입니다. 기본값은 정의되지 않습니다(즉, 브로커는 접미사가 적용되지 않음).
Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

© 2024 Red Hat, Inc.