2장. 네트워크 연결: 수락자 및 커넥터

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

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

네트워크 연결 구성 내의 URI는 해당 유형을 결정합니다. 예를 들어 URI에서 vm 를 사용하면 In-VM 연결이 생성됩니다. 아래 예에서 acceptor 의 URI는 vm 로 시작합니다.

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

URI에서 tcp 를 사용하면 네트워크 연결이 생성됩니다.

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

이 장에서는 먼저 네트워크 연결인 Acceptors 및 Connectors와 관련된 두 가지 구성 요소에 대해 설명합니다. 다음으로 TCP, HTTP 및 SSL/TLS 네트워크 연결과 In-VM 연결에 대한 구성 단계가 설명되어 있습니다.

2.1. 승인자 정보

AMQ Broker에서 네트워크 연결을 논의할 때 가장 중요한 개념 중 하나는 수락자입니다. 수락자는 브로커에 대한 연결 방식을 정의합니다. 다음은 구성 파일 BROKER_INSTANCE_DIR/etc/broker.xml 내에 있을 수 있는 수용 의 일반적인 구성입니다.

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

수락자는 허용 요소 내에서 그룹화됩니다. 서버당 나열할 수 있는 수락자 수에 대한 상한 제한은 없습니다.

수락자 구성

허용 자로 정의된 URI의 쿼리 문자열에 키-값 쌍을 추가하여 허용 자를 구성합니다. 세미콜론(';')을 사용하여 다음 예제와 같이 여러 키-값 쌍을 구분합니다. sslEnabled=true 로 시작하여 URI 끝에 여러 키-값 쌍을 추가하여 SSL/TLS에 대한 허용자를 구성합니다.

<acceptor name="example-acceptor">tcp://localhost:61617?sslEnabled=true;key-store-path=/path</acceptor>

커넥터 구성 매개변수에 대한 자세한 내용은 Acceptor and Connector Configuration Parameters 를 참조하십시오.