3.3. 네트워크 연결에서 MQTT 사용

브로커는 MQTT v3.1.1 (및 이전 v3.1 코드 메시지 형식)을 지원합니다. MQTT는 서버 간 경량 클라이언트, 게시/구독 메시징 프로토콜입니다. MQTT는 메시징 오버헤드 및 네트워크 트래픽과 클라이언트의 코드 풋프린트를 줄입니다. 이러한 이유로 MQTT는 센서 및 액추에이터와 같은 제한된 장치에 적합하며 IoT(사물 인터넷)의 팩트 표준 통신 프로토콜이 빠르게 증가하고 있습니다.

절차

  1. 구성 파일 BROKER_INSTANCE_DIR/etc/broker.xml을 엽니다.
  2. MQTT 프로토콜을 활성화된 상태로 허용자를 추가합니다. 예를 들면 다음과 같습니다.
<acceptors>
  <acceptor name="mqtt">tcp://localhost:1883?protocols=MQTT</acceptor>
  ...
</acceptors>

MQTT는 다음과 같은 몇 가지 유용한 기능과 함께 제공됩니다.

서비스 품질
각 메시지는 연결된 서비스 품질을 정의할 수 있습니다. 브로커는 가장 높은 수준의 서비스 수준에서 구독자에게 메시지를 전달하려고 시도합니다.
보존 메시지
메시지는 특정 주소에 대해 유지될 수 있습니다. 해당 주소에 대한 새 구독자는 고객이 연결되기 전에 보관된 메시지가 전송되어도 다른 메시지보다 먼저 남은 보존 메시지를 수신합니다.
와일드카드 서브스크립션
MQTT 주소는 파일 시스템의 계층 구조와 유사한 계층 구조입니다. 클라이언트는 특정 주제 또는 계층 구조의 전체 분기를 구독할 수 있습니다.
자주 묻는 질문
클라이언트는 연결 패킷의 일부로 "위처 메시지"를 설정할 수 있습니다. 클라이언트가 비정상적으로 연결이 끊어지면 브로커는 해당 메시지를 지정된 주소에 게시합니다. 다른 구독자는 will 메시지를 수신하고 그에 따라 대응할 수 있습니다.

MQTT 프로토콜에 대한 정보의 가장 좋은 출처는 사양에 있습니다. MQTT v3.1.1 사양은 OASIS 웹 사이트에서 다운로드할 수 있습니다.