검색

2장. 네트워크 연결에서 허용자 및 커넥터 구성

download PDF

AMQ Broker에 사용되는 연결에는 네트워크 연결 및 VM 내 연결의 두 가지 유형이 있습니다. 네트워크 연결은 동일한 서버 또는 물리적으로 원격에 관계없이 두 당사자가 서로 다른 가상 머신에 있는 경우 사용됩니다. in-VM 연결은 애플리케이션 또는 서버가 브로커와 동일한 가상 머신에 있을 때 클라이언트가 사용됩니다.

네트워크 연결은 Netty 를 사용합니다. Netty는 Java IO 또는 NIO, TCP 소켓, SSL/TLS 또는 터널링, HTTP 또는 HTTPS를 통한 터널링 등 다양한 방식으로 네트워크 연결을 구성할 수 있는 고성능 저급 네트워크 라이브러리입니다. Netty는 또한 모든 메시징 프로토콜에 대해 단일 포트를 사용할 수 있습니다. 브로커는 사용되는 프로토콜을 자동으로 감지하고 추가 처리를 위해 들어오는 메시지를 적절한 처리기로 보냅니다.

네트워크 연결의 URI는 해당 유형을 결정합니다. 예를 들어 URI에서 vm 를 지정하면 VM 내 연결이 생성됩니다.

<acceptor name="in-vm-example">vm://0</acceptor>

또는 URI에서 tcp 를 지정하면 네트워크 연결이 생성됩니다. 예를 들면 다음과 같습니다.

<acceptor name="network-example">tcp://localhost:61617</acceptor>

다음 섹션에서는 네트워크 연결 및 VM 내 연결에 필요한 두 가지 중요한 구성 요소, 수락자커넥터 를 설명합니다. 이 섹션에서는 TCP, HTTP 및 SSL/TLS 네트워크 연결뿐만 아니라 VM 연결의 수락자 및 커넥터를 구성하는 방법을 보여줍니다.

2.1. 승인자 정보

수락자는 브로커에 대한 연결 방식을 정의합니다. 각 수락자는 클라이언트가 연결을 수행하는 데 사용할 수 있는 포트 및 프로토콜을 정의합니다. 간단한 허용 오차 구성은 다음과 같습니다.

<acceptors>
   <acceptor name="example-acceptor">tcp://localhost:61617</acceptor>
</acceptors>

브로커 구성에 정의된 각 허용 요소는 단일 허용 항목 요소에 포함됩니다. 브로커에 정의할 수 있는 수락자 수에 대한 상한 제한은 없습니다. 기본적으로 AMQ 브로커는 다음과 같이 지원되는 각 메시징 프로토콜에 대한 수락자를 포함합니다.

<configuration ...>
   <core ...>
      ...
      <acceptors>
        ...
        <!-- Acceptor for every supported protocol -->
        <acceptor name="artemis">tcp://0.0.0.0:61616?tcpSendBufferSize=1048576;tcpReceiveBufferSize=1048576;protocols=CORE,AMQP,STOMP,HORNETQ,MQTT,OPENWIRE;useEpoll=true;amqpCredits=1000;amqpLowCredits=300</acceptor>

        <!-- AMQP Acceptor. Listens on default AMQP port for AMQP traffic -->
        <acceptor name="amqp">tcp://0.0.0.0:5672?tcpSendBufferSize=1048576;tcpReceiveBufferSize=1048576;protocols=AMQP;useEpoll=true;amqpCredits=1000;amqpLowCredits=300</acceptor>

        <!-- STOMP Acceptor -->
        <acceptor name="stomp">tcp://0.0.0.0:61613?tcpSendBufferSize=1048576;tcpReceiveBufferSize=1048576;protocols=STOMP;useEpoll=true</acceptor>

        <!-- HornetQ Compatibility Acceptor. Enables HornetQ Core and STOMP for legacy HornetQ clients. -->
        <acceptor name="hornetq">tcp://0.0.0.0:5445?anycastPrefix=jms.queue.;multicastPrefix=jms.topic.;protocols=HORNETQ,STOMP;useEpoll=true</acceptor>

        <!-- MQTT Acceptor -->
        <acceptor name="mqtt">tcp://0.0.0.0:1883?tcpSendBufferSize=1048576;tcpReceiveBufferSize=1048576;protocols=MQTT;useEpoll=true</acceptor>
      </acceptors>
      ...
  </core>
</configuration>
Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

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

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

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

Red Hat 소개

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

© 2024 Red Hat, Inc.