4.8. 주소 및 큐를 자동으로 생성 및 삭제


브로커를 구성하여 자동으로 주소와 큐를 생성하고 더 이상 사용하지 않는 후 삭제할 수 있습니다. 이렇게 하면 클라이언트가 연결할 수 있기 전에 각 주소를 미리 구성하지 않아도 됩니다.

4.8.1. 자동 큐 생성 및 삭제를 위한 구성 옵션

다음 표에는 큐 및 주소를 자동으로 생성 및 삭제하도록 address-setting 요소를 구성할 때 사용할 수 있는 구성 요소가 나열되어 있습니다.

표 4.3. 큐 및 주소를 자동으로 생성 및 삭제하는 구성 요소
address-setting 을…​로 원하는 경우이 구성 추가…​

클라이언트가 메시지를 전송하거나 존재하지 않는 주소로 매핑된 큐에서 메시지를 사용하려고 할 때 주소를 생성합니다.

auto-create-addresses

클라이언트가 큐로 메시지를 보내거나 큐에서 메시지를 사용하려고 할 때 큐를 생성합니다.

auto-create-queues

더 이상 큐가 없는 경우 자동으로 생성된 주소를 삭제합니다.

auto-delete-addresses

큐에 소비자 및 0개의 메시지가 있는 경우 자동으로 생성된 큐를 삭제합니다.

auto-delete-queues

클라이언트가 지정하지 않는 경우 특정 라우팅 유형을 사용합니다.

default-address-routing-type

4.8.2. 주소 및 큐의 자동 생성 및 삭제 구성

다음 절차에서는 주소 및 큐의 자동 생성 및 삭제를 구성하는 방법을 보여줍니다.

프로세스

  1. &lt ;broker_instance_dir> /etc/broker.xml 구성 파일을 엽니다.
  2. 자동 생성 및 삭제를 위해 address-setting 을 구성합니다. 다음 예제에서는 이전 표에 언급된 모든 구성 요소를 사용합니다.

    <configuration ...>
     <core ...>
      ...
      <address-settings>
        <address-setting match="activemq.#">
          <auto-create-addresses>true</auto-create-addresses>
          <auto-delete-addresses>true</auto-delete-addresses>
          <auto-create-queues>true</auto-create-queues>
          <auto-delete-queues>true</auto-delete-queues>
          <default-address-routing-type>ANYCAST</default-address-routing-type>
        </address-setting>
      </address-settings>
      ...
     </core>
    </configuration>
    address-setting
    address-setting 요소의 구성은 와일드카드 주소 activemq.# 과 일치하는 모든 주소 또는 큐에 적용됩니다.
    auto-create-addresses
    클라이언트가 아직 존재하지 않는 주소에 연결을 요청하면 브로커는 주소를 생성합니다.
    auto-delete-addresses
    자동으로 생성된 주소는 더 이상 연결된 큐가 없는 경우 삭제됩니다.
    auto-create-queues
    클라이언트가 아직 존재하지 않는 큐에 연결하도록 요청하면 브로커는 큐를 생성합니다.
    auto-delete-queues
    자동으로 생성된 큐는 더 이상 소비자 또는 메시지가 없는 경우 삭제됩니다.
    default-address-routing-type
    연결할 때 클라이언트가 라우팅 유형을 지정하지 않으면 브로커는 주소에 메시지를 전달할 때 ANYCAST 를 사용합니다. 기본값은 MULTICAST 입니다.

추가 리소스

4.8.3. 프로토콜 관리자 및 주소

프로토콜 관리자 라는 구성 요소는 프로토콜별 개념을 AMQ Broker 주소 모델, 큐 및 라우팅 유형에 사용되는 개념에 매핑합니다. 특정 상황에서 프로토콜 관리자가 브로커에 큐를 자동으로 생성할 수 있습니다.

예를 들어, 클라이언트가 주소 /house/ room1/lights/house/ room2/lights 를 사용하여 MQTT 서브스크립션 패킷을 전송하는 경우, MQTT 프로토콜 관리자는 두 주소에 멀티캐스트 의미가 필요하다는 것을 이해하게 됩니다. 따라서 프로토콜 관리자는 먼저 두 주소에 대해 멀티캐스트 가 활성화되어 있는지 확인합니다. 그렇지 않은 경우 동적으로 생성하려고 합니다. 프로토콜 관리자가 성공하면 클라이언트에서 요청한 각 서브스크립션에 대해 특수 서브스크립션 대기열을 생성합니다.

각 프로토콜은 약간 다르게 작동합니다. 아래 표는 다양한 유형의 큐에 대한 구독 프레임이 요청될 때 일반적으로 발생하는 내용을 설명합니다.

표 4.4. 다양한 대기열 유형에 대한 프로토콜 관리자 작업
큐가 이 유형의 경우…​프로토콜 관리자의 일반적인 작업은…​입니다.

Cryostat 서브스크립션 큐

적절한 주소를 찾고 멀티캐스트 의미 체계가 활성화되어 있는지 확인합니다. 그런 다음 클라이언트 ID를 사용하고 주소를 해당 라우팅 유형으로 멀티 캐스트 로 사용하여 특수 서브스크립션 큐를 생성합니다.

특수 이름을 사용하면 프로토콜 관리자가 클라이언트의 연결을 끊고 나중에 다시 연결할 때 필요한 클라이언트 서브스크립션 대기열을 신속하게 식별할 수 있습니다.

클라이언트가 구독을 취소하면 큐가 삭제됩니다.

임시 서브스크립션 대기열

적절한 주소를 찾고 멀티캐스트 의미 체계가 활성화되어 있는지 확인합니다. 그런 다음 멀티캐스트 라우팅 유형을 사용하여 이 주소 아래에 임의의 UUID(읽기 UUID) 이름을 사용하여 큐를 생성합니다.

클라이언트의 연결을 끊으면 큐가 삭제됩니다.

점대점 대기열

적절한 주소를 찾고 anycast 라우팅 유형이 활성화되어 있는지 확인합니다. 이 경우 주소와 동일한 이름으로 큐를 찾는 것을 목표로 합니다. 존재하지 않는 경우 사용 가능한 첫 번째 큐를 찾습니다. 존재하지 않는 경우 큐를 자동으로 생성합니다(자동 생성이 활성화됨). 큐 소비자는 이 큐에 바인딩됩니다.

큐가 자동으로 생성되면 소비자와 메시지가 없으면 자동으로 삭제됩니다.

Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

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

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

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

Red Hat 소개

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

© 2024 Red Hat, Inc.