MQTT 프로토콜 설명: IoT 초보자를 위한 완벽한 가이드
MQTT 프로토콜 설명: IoT 초보자를 위한 완벽한 가이드
목차
MQTT란?
MQTT가 IoT에 가장 적합한 프로토콜인 이유는?
MQTT는 어떻게 작동하나요?
MQTT 워크플로
MQTT 시작하기: 빠른 튜토리얼
MQTT와 다른 프로토콜 비교
2024년에 주목해야 할 MQTT 기술 동향 7가지
이 튜토리얼의 문서 출처는 이 링크를 따라가시면 만날 수 있습니다. 배움을 멈추지 마세요. 더불어 절대 포기하지 마세요!
MQTT에 대해 자세히 알아보기
오늘날의 상호 연결된 세상에서는 기기가 자동화와 데이터 교환을 용이하게 하기 위해 원활하게 통신하므로 MQTT를 이해하는 것이 점점 더 중요해지고 있습니다. IoT 프로젝트를 탐구하는 개발자이든 단순히 기기가 네트워크를 통해 서로 통신하는 방식에 대해 궁금한 개발자이든 이 가이드는 MQTT의 기본 사항, 핵심 개념 및 실용적인 응용 프로그램을 안내합니다.
MQTT란?
MQTT(Message Queuing Telemetry Transport)는 리소스가 제한된 장치와 저대역폭, 높은 대기 시간 또는 신뢰할 수 없는 네트워크를 위해 설계된 가볍고 게시-구독 기반 메시징 프로토콜입니다. 사물 인터넷(IoT) 애플리케이션에서 널리 사용되어 센서, 액추에이터 및 기타 장치 간의 효율적인 통신을 제공합니다.
MQTT가 IoT에 가장 적합한 프로토콜인 이유는?
MQTT는 IoT 시스템의 특정 요구 사항에 맞게 조정된 고유한 기능과 성능으로 인해 최고의 IoT 프로토콜 중 하나로 부상했습니다. 주요 이유는 다음과 같습니다.
가벼움: IoT 장치는 종종 처리 능력, 메모리 및 에너지 소비 측면에서 제약을 받습니다. MQTT의 최소 오버헤드와 작은 패킷 크기는 이러한 장치에 이상적입니다. 리소스를 덜 소모하여 제한된 기능에서도 효율적인 통신이 가능하기 때문입니다.
안정성: IoT 네트워크는 높은 대기 시간 또는 불안정한 연결을 경험할 수 있습니다. MQTT는 다양한 QoS 수준, 세션 인식 및 지속적인 연결을 지원하여 어려운 조건에서도 안정적인 메시지 전달을 보장하므로 IoT 애플리케이션에 적합합니다.
보안 통신:
보안 통신: IoT 네트워크는 종종 민감한 데이터를 전송하므로 보안이 매우 중요합니다. MQTT는 전송 계층 보안(TLS) 및 보안 소켓 계층(SSL) 암호화를 지원하여 전송 중에 데이터 기밀성을 보장합니다. 또한 사용자 이름/암호 자격 증명 또는 클라이언트 인증서를 통해 인증 및 권한 부여 메커니즘을 제공하여 네트워크 및 리소스에 대한 액세스를 보호합니다.
관련 콘텐츠: MQTT 보안 가이드를 읽어보세요.
양방향성: MQTT의 게시-구독 모델을 사용하면 장치 간에 원활한 양방향 통신이 가능합니다. 클라이언트는 토픽에 메시지를 게시하고 특정 토픽에 대한 메시지를 수신하도록 구독할 수 있으므로 장치 간에 직접 결합하지 않고도 다양한 IoT 생태계에서 효과적인 데이터 교환이 가능합니다. 이 모델은 또한 새로운 장치의 통합을 간소화하여 쉬운 확장성을 보장합니다.
지속적이고 상태 저장 세션: MQTT를 사용하면 클라이언트가 브로커와 상태 저장 세션을 유지할 수 있으므로 시스템은 연결이 끊어진 후에도 구독 및 전달되지 않은 메시지를 기억할 수 있습니다. 클라이언트는 연결 중에 연결 유지 간격을 지정할 수도 있으며, 이를 통해 브로커는 주기적으로 연결 상태를 확인합니다. 연결이 끊어지면 브로커는 전달되지 않은 메시지를 저장하고(QoS 수준에 따라 다름) 클라이언트가 다시 연결되면 전달을 시도합니다. 이 기능은 안정적인 통신을 보장하고 간헐적인 연결로 인한 데이터 손실 위험을 줄여줍니다.
대규모 IoT 기기 지원: IoT 시스템은 종종 많은 수의 기기를 포함하므로 대규모 배포를 처리할 수 있는 프로토콜이 필요합니다. MQTT의 가벼운 특성, 낮은 대역폭 소비, 효율적인 리소스 사용으로 인해 대규모 IoT 애플리케이션에 적합합니다. 게시-구독 패턴을 통해 MQTT는 송신자와 수신자를 분리하여 네트워크 트래픽과 리소스 사용량을 줄여 효과적으로 확장할 수 있습니다. 또한 이 프로토콜은 다양한 QoS 수준을 지원하므로 애플리케이션 요구 사항에 따라 메시지 전달을 사용자 정의하여 다양한 시나리오에서 최적의 성능을 보장합니다.
언어 지원: IoT 시스템에는 종종 다양한 프로그래밍 언어를 사용하여 개발된 기기와 애플리케이션이 포함됩니다. MQTT의 광범위한 언어 지원으로 여러 플랫폼 및 기술과 쉽게 통합하여 다양한 IoT 생태계에서 원활한 통신과 상호 운용성을 촉진합니다. MQTT 클라이언트 프로그래밍 블로그 시리즈를 방문하여 PHP, Node.js, Python, Golang, Node.js 및 기타 프로그래밍 언어에서 MQTT를 사용하는 방법을 알아보세요.
다음 기사에서 자세히 알아보세요: MQTT란 무엇이며 IoT에 가장 적합한 프로토콜인 이유는?
MQTT는 어떻게 작동합니까?
MQTT의 작동 방식을 이해하려면 먼저 MQTT 클라이언트, MQTT 브로커, 게시-구독 모드, 토픽 및 QoS의 개념을 숙지해야 합니다.
MQTT 클라이언트
MQTT 클라이언트 라이브러리를 실행하는 모든 애플리케이션이나 장치는 MQTT 클라이언트입니다. 예를 들어, MQTT를 사용하는 인스턴트 메시징 앱은 클라이언트이고, MQTT를 사용하여 데이터를 보고하는 다양한 센서는 클라이언트이며, 다양한 MQTT 테스트 도구도 클라이언트입니다.
MQTT 브로커
MQTT 브로커는 클라이언트 연결, 연결 해제, 구독 및 구독 취소 요청과 라우팅 메시지를 처리합니다. 강력한 MQTT 브로커는 방대한 연결과 백만 레벨의 메시지 처리량을 지원하여 IoT 서비스 공급자가 비즈니스에 집중하고 안정적인 MQTT 애플리케이션을 빠르게 만들 수 있도록 도와줍니다.
MQTT 브로커에 대한 자세한 내용은 MQTT 브로커: 작동 방식, 인기 있는 옵션 및 빠른 시작 블로그를 확인하세요.
게시-구독 패턴
게시-구독 패턴은 메시지를 보내는 클라이언트(게시자)와 메시지를 받는 클라이언트(구독자)를 분리한다는 점에서 클라이언트-서버 패턴과 다릅니다. 게시자와 구독자는 직접 연결을 설정할 필요가 없으며 MQTT 브로커는 모든 메시지를 라우팅하고 배포할 책임이 있습니다.
다음 다이어그램은 MQTT 게시/구독 프로세스를 보여줍니다. 온도 센서는 클라이언트로서 MQTT 서버에 연결하고 온도 데이터를 토픽(예: 온도)에 게시하고, 서버는 메시지를 수신하여 온도 토픽에 구독된 클라이언트로 전달합니다.
게시-구독 패턴
토픽
MQTT 프로토콜은 토픽을 기반으로 메시지를 라우팅합니다. 토픽은 URL 경로와 유사한 슬래시/로 계층을 구분합니다. 예:
chat/room/1
sensor/10/temperature
sensor/+/temperature
MQTT 토픽은 다음 와일드카드를 지원합니다: + 및 #.
+: a/x 또는 a/y와 일치하는 a/+와 같은 단일 레벨의 와일드카드를 나타냅니다.
#: a/x, a/b/c/d와 일치하는 a/#와 같은 다중 레벨의 와일드카드를 나타냅니다.
MQTT 토픽에 대한 자세한 내용은 MQTT 토픽 및 와일드카드: 초보자 가이드 블로그를 확인하세요.
서비스 품질(QoS)
MQTT는 세 가지 종류의 서비스 품질을 제공하며 다양한 네트워크 환경에서 메시징 안정성을 보장합니다.
QoS 0: 메시지는 최대 한 번만 전달됩니다. 클라이언트를 현재 사용할 수 없는 경우 이 메시지를 잃게 됩니다.
QoS 1: 메시지는 최소 한 번 전달됩니다.
QoS 2: 메시지는 한 번만 전달됩니다.
MQTT QoS에 대한 자세한 내용은 MQTT QoS 0, 1, 2 설명: 빠른 시작 가이드 블로그를 확인하세요.
MQTT 워크플로
이제 MQTT의 기본 구성 요소를 이해했으므로 일반적인 워크플로가 어떻게 작동하는지 살펴보겠습니다.
- 클라이언트는 TCP/IP를 사용하여 브로커에 연결을 시작하고 보안 통신을 위해 선택적 TLS/SSL 암호화를 사용합니다. 클라이언트는 인증 자격 증명을 제공하고 클린 또는 영구 세션을 지정합니다.
- 클라이언트는 특정 토픽에 메시지를 게시하거나 토픽을 구독하여 메시지를 수신합니다. 게시 클라이언트는 브로커에 메시지를 보내고 구독 클라이언트는 특정 토픽에서 메시지를 수신하는 데 관심을 표시합니다.
- 브로커는 게시된 메시지를 수신하여 관련 토픽에 가입한 모든 클라이언트에 전달합니다. 지정된 서비스 품질(QoS) 수준에 따라 안정적인 메시지 전달을 보장하고 세션 유형에 따라 연결이 끊긴 클라이언트의 메시지 저장소를 관리합니다.
MQTT 시작하기: 빠른 튜토리얼
이제 몇 가지 간단한 데모로 MQTT 사용을 시작하는 방법을 보여드리겠습니다. 시작하기 전에 MQTT 브로커와 MQTT 클라이언트를 준비해야 합니다.
MQTT 브로커 준비
EMQX는 무제한 연결을 지원하고 원활한 통합을 제공하며 어디에나 배포할 수 있는 확장 가능한 분산 MQTT 메시징 플랫폼입니다. 다양한 사용자의 요구 사항을 충족하기 위해 다양한 버전을 제공합니다.
완전 관리형 클라우드 서비스
완전 관리형 클라우드 서비스는 MQTT 서비스를 시작하는 가장 쉬운 방법입니다. EMQX Serverless는 종량제 가격 책정 및 자동 확장 기능이 있는 다중 테넌트 MQTT 서비스입니다. 몇 분 안에 시작할 수 있으며 AWS, Google Cloud, Microsoft Azure의 17개 지역에서 실행됩니다.
무료 공개 MQTT 브로커
이 가이드에서는 EMQX 플랫폼에 구축된 EMQ에서 제공하는 무료 공개 MQTT 브로커를 활용합니다. 서버 액세스 세부 정보는 다음과 같습니다.
브로커 주소: broker.emqx.io
TCP 포트: 1883
WebSocket 포트: 8083
MQTT 클라이언트 준비
이 게시물에서는 브라우저 액세스를 지원하는 MQTTX에서 제공하는 MQTT 클라이언트 도구인 https://mqttx.app/web-client를 사용합니다. MQTT X는 데스크톱 클라이언트와 명령줄 도구도 제공합니다.
MQTTX는 macOS, Linux 및 Windows에서 실행되는 우아한 크로스 플랫폼 MQTT 5.0 데스크톱 클라이언트입니다. 사용자 친화적인 채팅 스타일 인터페이스를 통해 사용자는 여러 MQTT/MQTTS 연결을 쉽게 만들고 MQTT 메시지를 구독/게시할 수 있습니다.
MQTTX 미리보기
현재 모든 프로그래밍 언어에 대한 성숙한 오픈 소스 MQTT 클라이언트 라이브러리가 있습니다. 다양한 프로그래밍 언어에서 인기 있는 MQTT 클라이언트 라이브러리 및 SDK를 선택하여 MQTT 클라이언트의 사용법을 빠르게 이해할 수 있도록 코드 예제를 제공했습니다.
MQTT 연결 만들기
MQTT 프로토콜을 사용하여 통신하기 전에 클라이언트는 MQTT 연결을 만들어 브로커에 연결해야 합니다.
브라우저로 https://mqttx.app/web-client로 이동하여 페이지 중앙에 있는 새 연결 버튼을 클릭하면 다음 페이지가 표시됩니다.
MQTT 연결 만들기
이름에 Simple Demo를 입력하고 오른쪽 상단 모서리에 있는 연결 버튼을 클릭하여 MQTT 연결을 만듭니다. 다음은 연결이 성공적으로 설정되었음을 나타냅니다.
MQTT 연결 성공
MQTT 연결 매개변수에 대해 자세히 알아보려면 블로그 게시물을 확인하세요: MQTT 연결을 설정할 때 매개변수를 설정하는 방법
와일드카드 토픽 구독
다음으로, 앞서 만든 Simple Demo 연결에서 와일드카드 토픽 sensor/+/temperature를 구독합니다. 이 토픽은 모든 센서에서 보고된 온도 데이터를 수신합니다.
아래와 같이 새 구독 버튼을 클릭하고 팝업 상자의 토픽 필드에 토픽 sensor/+/temperature를 입력합니다. 기본 QoS는 0으로 유지합니다.
MQTT 구독
구독이 성공하면 구독 목록 중간에 추가 레코드가 표시됩니다.
MQTT 구독이 성공했습니다.
MQTT 메시지 게시
다음으로, 왼쪽 메뉴에서 + 버튼을 클릭하여 각각 센서 1과 센서 2라는 두 개의 연결을 만들어 두 개의 온도 센서를 시뮬레이션합니다.
MQTT 연결 만들기
연결이 만들어지면 세 개의 연결이 표시되고 연결 왼쪽에 있는 온라인 상태 점이 모두 녹색이 됩니다.
MQTT 연결이 성공적으로 생성되었습니다
Sensor 1 연결을 선택하고, 페이지의 왼쪽 하단에 게시 주제 sensor/1/temperature를 입력하고, 메시지 상자에 다음 JSON 형식 메시지를 입력하고, 오른쪽 하단에 있는 게시 버튼을 클릭하여 메시지를 보냅니다.
{
"msg": "17.2"
}
MQTT 메시지 게시
메시지가 다음과 같이 성공적으로 전송되었습니다.
MQTT 메시지가 성공적으로 전송되었습니다
동일한 단계를 사용하여 다음 JSON 메시지를 Sensor 2 연결의 sensor/2/temperature 주제에 게시합니다.
{
"msg": "18.2"
}
Simple Demo 연결에 대한 두 개의 새 메시지가 표시됩니다.
MQTT 알림
Simple Demo 연결을 클릭하면 두 센서에서 보낸 두 개의 메시지가 표시됩니다.
MQTT 메시지
MQTT 기능 데모
보관된 메시지
MQTT 클라이언트가 서버에 메시지를 게시하면 보관된 메시지 플래그를 설정할 수 있습니다. Retained Message는 메시지 서버에 있으며, 이후 구독자는 주제를 구독할 때에도 메시지를 수신할 수 있습니다.
아래에 표시된 것처럼 Retain 옵션이 선택된 상태로 Sensor 1 연결의 retained_message 주제로 두 개의 메시지를 보냅니다.
MQTT Retained Message
그런 다음 Simple Demo 연결의 retained_message 주제를 구독합니다. 구독이 성공하면 Sensor 1에서 보낸 두 번째 Retained Message가 수신되며, 이는 서버가 주제에 대한 마지막 Retained Message만 보관한다는 것을 보여줍니다.
MQTT Retained Message
Retained Message에 대한 자세한 내용은 MQTT Retained Messages 초보자 가이드 블로그를 확인하세요.
Clean Session
일반적으로 MQTT 클라이언트는 온라인일 때만 다른 클라이언트가 게시한 메시지를 수신할 수 있습니다. 클라이언트가 오프라인이었다가 온라인이 되면 오프라인 기간 동안 메시지를 수신하지 않습니다.
그러나 클라이언트가 Clean Session을 false로 설정하여 연결하고 동일한 클라이언트 ID로 다시 온라인 상태가 되면 메시지 서버는 클라이언트를 위해 일정량의 오프라인 메시지를 보관하고 클라이언트가 다시 온라인 상태가 되면 클라이언트로 보냅니다.
이 데모에 사용된 공개 MQTT 서버는 오프라인 메시지를 5분 동안 보관하도록 설정되어 있으며 최대 메시지 수는 1000개입니다(QoS 0 메시지 없음).
다음으로 MQTT 3.1.1 연결을 만들고 QoS 1로 클린 세션을 데모합니다.
MQTT 5는 Clean Start 및 Session Expiry Interval을 사용하여 Clean Session을 개선합니다. 자세한 내용은 블로그 Clean Start 및 Session Expiry Interval을 참조하세요.
MQTT V3이라는 이름의 연결을 만들고 Clean Session을 false로 설정하고 MQTT 버전 3.1.1을 선택합니다.
MQTT Clean Session
연결이 성공한 후 clean_session_false 토픽을 구독하고 QoS를 1로 설정합니다.
MQTT 구독
구독이 성공한 후 오른쪽 상단 모서리에 있는 연결 해제 버튼을 클릭합니다.
MQTT 연결 끊기
다음으로 MQTT_V3_Publish라는 이름의 연결을 만들고 MQTT 버전도 3.1.1로 설정합니다. 연결이 성공한 후 clean_session_false 토픽에 세 개의 메시지를 게시합니다.
MQTT 메시지 게시
그런 다음 MQTT_V3 연결을 선택하고 연결 버튼을 클릭하여 서버에 연결하면 세 개의 오프라인 메시지를 받게 됩니다.
MQTT 메시지
Clean Session에 대한 자세한 내용은 MQTT Persistent Session and Clean Session Explained 블로그를 확인하세요.
Last Will
MQTT 클라이언트가 서버에 CONNECT 요청을 할 때 Will Message 플래그와 토픽, 페이로드를 보낼지 여부를 설정할 수 있습니다.
MQTT 클라이언트가 비정상적으로 오프라인인 경우(클라이언트가 연결을 끊기 전에 DISCONNECT 메시지가 서버로 전송되지 않음) MQTT 서버는 will 메시지를 게시합니다.
다음과 같이 Last Will이라는 이름의 연결을 만듭니다.
- 효과를 빠르게 보기 위해 Keep Alive를 5초로 설정합니다.
- Last-Will 주제를 last_will로 설정합니다.
- Last-Will QoS를 1로 설정합니다.
- Last-Will Retain을 true로 설정합니다.
- Last-Will Payload를 오프라인으로 설정합니다.
MQTT Last Will
연결이 성공한 후 5초 이상 컴퓨터 네트워크 연결을 끊은 다음(비정상적인 클라이언트 연결 끊김 시뮬레이션) 네트워크를 다시 켭니다.
그런 다음 Simple Demo 연결을 시작하고 last_will 주제를 구독합니다. Last Will 연결에서 설정한 will 메시지를 받게 됩니다.
MQTT Last Will
MQTT Will Message에 대한 자세한 내용은 MQTT Will Message 사용 블로그를 확인하세요.
MQTT와 다른 프로토콜 비교
MQTT 외에도 HTTP, WebSocket, CoAP와 같은 프로토콜도 IoT 공간에서 일반적으로 사용됩니다. 이러한 프로토콜과 비교했을 때 MQTT는 대역폭 소모가 낮고 가벼운 게시-구독 모델과 같은 주요 이점을 제공하여 리소스가 제한된 환경과 대규모 장치 네트워크에 더 적합합니다.
MQTT와 이러한 프로토콜의 자세한 비교는 다음 블로그 게시물을 참조하세요.
- MQTT 대 HTTP
- MQTT 대 WebSocket
- MQTT 대 CoAP
- MQTT 대 AMQP
2024년에 주목해야 할 MQTT 기술 트렌드 7가지
QUIC를 통한 MQTT
UDP를 통해 실행되는 Google의 새로운 전송 프로토콜인 QUIC는 대기 시간을 줄이고 데이터 전송 속도를 개선하여 인터넷 연결에 혁명을 일으키고 있습니다. MQTT에 도입하면 커넥티드 카 및 산업용 IoT와 같이 신뢰할 수 없는 네트워크나 낮은 대기 시간 요구 사항이 있는 시나리오에 도움이 될 것입니다. EMQX 및 향후 MQTT 버전은 QUIC를 통한 MQTT를 수용하여 IoT 연결 표준에 큰 변화를 가져왔습니다.
자세한 내용은 블로그를 확인하세요. QUIC를 통한 MQTT: 차세대 IoT 표준 프로토콜.
MQTT 서버리스
서버리스 MQTT 브로커는 최첨단 아키텍처 혁신으로 등장하여 몇 번의 클릭만으로 MQTT 서비스를 빠르게 배포할 수 있습니다. 또한, 서버리스 MQTT는 원활한 리소스 확장과 종량제 가격 책정 모델로 비교할 수 없는 유연성을 제공합니다. 모든 IoT 개발자가 무료 서버리스 MQTT 브로커를 사용할 수 있는 미래를 만들어낼 준비가 되었습니다.
MQTT 다중 테넌시
다중 테넌시 아키텍처는 서버리스 MQTT 브로커의 중요한 측면입니다. 다른 사용자 또는 테넌트의 IoT 기기는 데이터와 비즈니스 로직을 다른 테넌트와 분리한 채로 동일한 대규모 MQTT 클러스터에 연결할 수 있습니다. 다중 테넌시를 지원하는 MQTT 브로커는 관리 오버헤드를 줄이고 복잡한 시나리오나 대규모 IoT 애플리케이션에 대한 유연성을 높여줍니다.
자세한 내용은 블로그를 확인하세요: MQTT의 다중 테넌시 아키텍처: 핵심 사항, 이점 및 과제.
MQTT Sparkplug 3.0
MQTT Sparkplug는 MQTT를 사용하여 센서, 액추에이터, PLC 및 게이트웨이를 포함한 산업용 기기를 연결하는 방법을 정의합니다. 이 기능은 다양한 산업용 기기와의 연결 및 통신을 간소화하고 효율적인 산업용 데이터 수집, 처리 및 분석을 달성하는 것을 목표로 합니다. 더욱 진보된 기능을 갖춘 최신 3.0 버전은 산업용 IoT에서 더 널리 채택될 가능성이 있습니다.
자세한 내용은 블로그를 확인하세요: MQTT Sparkplug: Industry 4.0에서 IIoT를 위한 IT 및 OT 연결.
MQTT 통합 네임스페이스
통합 네임스페이스는 산업용 IoT 및 Industry 4.0을 위한 MQTT 브로커에 구축된 솔루션 아키텍처입니다. 중앙 MQTT 브로커를 사용하여 산업 기기, 센서 및 SCADA, MES, ERP와 같은 애플리케이션을 스타 토폴로지로 연결합니다. 통합 네임스페이스를 채택하면 OT 및 IT 시스템이 데이터를 보다 효율적으로 교환하고 IoT 시대에 이를 통합할 수 있습니다.
자세한 내용은 블로그를 확인하세요: 통합 네임스페이스(UNS): IIoT를 위한 차세대 데이터 패브릭.
MQTT 지리적 분포
MQTT 지리적 분포는 여러 지역 또는 클라우드에 배포된 MQTT 브로커가 단일 클러스터로 함께 작동할 수 있도록 하는 혁신적인 아키텍처입니다. 조직이 여러 클라우드에서 글로벌 MQTT 액세스 네트워크를 구축할 수 있으며, 가장 가까운 네트워크 엔드포인트에서 로컬로 연결된 장치와 애플리케이션은 물리적 위치에 관계없이 서로 통신할 수 있습니다.
MQTT 스트림
MQTT 스트림은 MQTT 브로커 내에서 대용량, 고주파 데이터 스트림을 실시간으로 관리하도록 설계된 MQTT 프로토콜의 예상 확장입니다. 이 혁신은 과거 메시지 재생을 가능하게 하여 데이터 일관성, 감사 및 규정 준수를 보장합니다. 기본 제공 스트림 처리 기능은 IoT 데이터 처리 스택을 간소화하여 MQTT 기반 IoT 애플리케이션에서 실시간 데이터 관리를 위한 귀중한 도구가 됩니다.
MQTT에 대해 자세히 알아보기
이제 MQTT의 기본 개념과 사용 프로세스에 대한 여정을 마쳤습니다. 이제 MQTT 프로토콜을 사용하기 위해 지식을 적용할 수 있습니다. MQTT 토픽, 와일드카드, 보관된 메시지, 유언장 및 기타 기능에 대한 자세한 내용은 EMQ에서 제공하는 "MQTT 가이드 2024: 초보자부터 고급자까지" 기사 시리즈를 확인할 수 있습니다. 이 시리즈는 MQTT의 고급 애플리케이션을 안내하고 MQTT 애플리케이션 및 서비스 개발을 시작하는 데 도움을 줍니다.
Related Resources
- MQTT Broker: How It Works, Popular Options, and Quickstart
- Free MQTT Broker: Exploring Options and Choosing the Right Solution
- Comparison of Open Source MQTT Brokers 2024
- MQTT Platform: Essential Features & Use Cases
- MQTT Client Tools 101: A Beginner's Guide
- Mastering MQTT: Your Ultimate Tutorial for MQTT