MQTT 5.0, 3.1.1, 3.1을 지원하는 오픈소스 MQTT 브로커와 C/C++ 클라이언트 라이브러리 및 CLI 도구입니다.
vernemq/vernemq
IoT 및 산업용 메시징을 위한 분산형 Erlang 기반 MQTT 메시지 브로커로, MQTT 3.1, 3.1.1 및 5.0을 지원합니다.
- 스타
- 3,642
- 포크
- 432
- 열린 이슈
- 172
- 마지막 커밋
- 3일 전
어떤 프로젝트인가요?
VerneMQ는 Apache 2.0 라이선스로 제공되는 Erlang 기반 MQTT 메시지 브로커입니다. 기기와 애플리케이션 간의 발행/구독 메시지를 라우팅하며, 범용 하드웨어로 구성된 클러스터에서 수평 확장하면서 다수의 퍼블리셔와 구독자를 동시에 처리하도록 설계되었습니다.
이 브로커는 QoS 0, 1, 2와 TLS, WebSockets, 공유 구독, 브리지, LevelDB 기반 오프라인 메시지 저장 기능을 지원하며 MQTT 3.1, 3.1.1 및 5.0을 구현합니다. 인증 및 권한 부여를 MongoDB, Redis, MySQL, PostgreSQL, CockroachDB 또는 HTTP 웹훅에 위임할 수 있으며, 관리용 HTTP API, $SYS 모니터링 토픽, 클러스터 상태 페이지를 제공합니다.
소스에서 빌드하려면 Erlang/OTP 27~29와 libsnappy-dev가 필요하며, 프로젝트는 바이너리 패키지와 Docker 이미지를 제공합니다. 유지관리자가 상용 지원도 제공합니다.
핵심 기능
- 01QoS 0, 1, 2를 지원하며 MQTT 3.1, 3.1.1 및 5.0을 구현합니다.
- 02세션 밸런싱과 공유 구독을 지원하는 분산 클러스터링 기능.
- 03암호화된 연결과 브라우저 기반 연결을 위한 TLS 및 WebSocket 지원.
- 04MongoDB, Redis, MySQL, PostgreSQL 또는 HTTP 웹훅을 통한 인증 및 권한 부여.
- 05LevelDB 기반 오프라인 메시지 저장.
- 06관리용 HTTP API 및 $SYS 모니터링 토픽.
활용 사례
- 대규모 IoT 또는 산업용 기기에서 텔레메트리 수집.
- 스마트 제품 또는 IoT 플랫폼의 메시징 허브로 활용.
- MQTT를 통해 공장 현장의 기기를 클라우드 애플리케이션에 연결.
- 노드 장애를 견뎌야 하는 다중 노드 MQTT 백본 운영.
빠른 시작
- 1
Erlang/OTP 27~29, libsnappy-dev 및 C 컴파일러를 설치합니다
- 2
소스 트리에서 VerneMQ를 빌드합니다
make rel - 3
빌드한 VerneMQ 서버를 시작합니다
bin/vernemq start
사용 전 알아둘 점
- Erlang/OTP 27~29 및 libsnappy-dev가 필요하므로 소스 빌드에는 약간의 설정이 필요합니다.
- 상용 지원과 바이너리 패키지는 오픈 소스 프로젝트와 별도로 제공됩니다.
포함된 컬렉션
토픽
자주 묻는 질문
- vernemq은(는) 무엇인가요?
- IoT 및 산업용 메시징을 위한 분산형 Erlang 기반 MQTT 메시지 브로커로, MQTT 3.1, 3.1.1 및 5.0을 지원합니다. VerneMQ는 Apache 2.0 라이선스로 제공되는 Erlang 기반 MQTT 메시지 브로커입니다. 기기와 애플리케이션 간의 발행/구독 메시지를 라우팅하며, 범용 하드웨어로 구성된 클러스터에서 수평 확장하면서 다수의 퍼블리셔와 구독자를 동시에 처리하도록 설계되었습니다.
- vernemq은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
- vernemq은(는) Apache-2.0 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
- vernemq은(는) 아직 유지보수되고 있나요?
- 활발히 유지보수 중. vernemq의 마지막 커밋은 2026년 10월 22일입니다.
- vernemq은(는) 어디에 사용할 수 있나요?
- 대규모 IoT 또는 산업용 기기에서 텔레메트리 수집. 스마트 제품 또는 IoT 플랫폼의 메시징 허브로 활용. MQTT를 통해 공장 현장의 기기를 클라우드 애플리케이션에 연결. 노드 장애를 견뎌야 하는 다중 노드 MQTT 백본 운영.
- vernemq는 어떻게 설치하나요?
- Erlang/OTP 27~29, libsnappy-dev 및 C 컴파일러를 설치합니다 소스 트리에서 VerneMQ를 빌드합니다: make rel 빌드한 VerneMQ 서버를 시작합니다: bin/vernemq start
- vernemq은(는) 어디서 받을 수 있나요?
- 소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/vernemq/vernemq
요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.
관련 프로젝트
IoT, 커넥티드 카 및 산업용 IoT 워크로드를 위한 SQL 기반 오픈소스 고성능 시계열 데이터베이스입니다.
Erlang/OTP에서 영감을 얻은 Go 액터 모델 프레임워크로, 감독 기능과 네트워크 투명성을 갖춘 분산 시스템을 구축합니다.
Python용 분산 작업 큐로, 백그라운드 작업을 실행하고 워커와 메시지 브로커에 작업을 분배합니다.
사이드카를 통해 분산 애플리케이션과 AI 에이전트에 내구성 있는 워크플로, 서비스 간 보안, 상태 관리, pub/sub를 제공하는 이식 가능한 런타임입니다.
Python, TypeScript, Go, Ruby SDK와 내구성 계층인 Postgres를 지원하는 백그라운드 작업, AI 에이전트 및 내구성 있는 워크플로 오케스트레이션 엔진입니다.