Rmqtt

MQTT Server/MQTT Broker - Scalable Distributed MQTT Message Broker for IoT in the 5G Era
Alternatives To Rmqtt
Project NameStarsDownloadsRepos Using ThisPackages Using ThisMost Recent CommitTotal ReleasesLatest ReleaseOpen IssuesLicenseLanguage
Emqx11,351
2 days ago215otherErlang
The most scalable open-source MQTT broker for IoT, IIoT, and connected vehicles
Rabbitmq Server10,52411113a day ago148September 21, 2022268otherStarlark
Open source RabbitMQ: core server and tier 1 (built-in) plugins
Im Server7,045
5 days ago12otherJava
即时通讯(IM)系统
Ejabberd5,472
12a day ago40May 12, 2022164otherErlang
Robust, Ubiquitous and Massively Scalable Messaging Platform (XMPP, MQTT, SIP Server)
Vernemq2,978
2 days ago239apache-2.0Erlang
A distributed MQTT message broker based on Erlang/OTP. Built for high quality & Industrial use cases.
Mainflux2,03011a day ago25March 29, 2021118apache-2.0Go
Industrial IoT Messaging and Device Management Platform
Crossbar2,026
11 days ago268otherPython
Crossbar.io - WAMP application router
Awesome Mqtt1,860
4 months ago8
A curated list of MQTT related stuff. :sparkles:
Ios Chat1,052
5 days ago17otherObjective-C
开源的即时通讯(野火IM)系统
Hivemq Community Edition894
a day ago7November 19, 202112apache-2.0Java
HiveMQ CE is a Java-based open source MQTT broker that fully supports MQTT 3.x and MQTT 5. It is the foundation of the HiveMQ Enterprise Connectivity and Messaging Platform
Alternatives To Rmqtt
Select To Compare


Alternative Project Comparisons
Readme

RMQTT Broker

GitHub Release Rust Version

English | 简体中文

RMQTT broker is a fully open source, highly scalable, highly available distributed MQTT messaging broker for IoT, M2M and mobile applications that can handle millions of concurrent clients on a single service node.

Features

  • 100% Rust safe code;

  • Based on tokio, ntex , ntex-mqtt;

  • MQTT v3.1, v3.1.1 and v5.0 protocols support;

    • QoS0, QoS1, QoS2 message support;
    • Offline message support;
    • Retained message support;
    • Last Will message support;
  • Built-in ACL;

  • HTTP ACL;

  • WebHook;

  • HTTP APIs;

  • Distributed cluster;

  • Hooks;

  • TLS support;

  • WebSocket support;

  • WebSocket-TLS support;

  • Shared subscription($share/{group}/topic);

  • Built-in extensible components;

  • Extensible plug-in support;

  • Metrics & Stats;

  • Rate limit;

  • Inflight and Queue;

  • Message resending;

  • For full list of new features, please read RMQTT Release Notes.

Installation

The RMQTT broker is cross-platform, which supports Linux, Unix, macOS and Windows. It means RMQTT can be deployed on x86_64 architecture servers and ARM devices like Raspberry Pi.

Run RMQTT using Docker

  • Single node
docker run -d --name rmqtt -p 1883:1883 -p 8883:8883 -p 11883:11883 -p 6060:6060 -v /app/log/rmqtt:/var/log/rmqtt  rmqtt/rmqtt:latest
  • Multi node
  docker run -d --name rmqtt1 -p 1884:1883 -p 8884:8883 -p 11884:11883 -p 6064:6060 -v /app/log/rmqtt/1:/var/log/rmqtt  rmqtt/rmqtt:latest --id 1 --plugins-default-startups "rmqtt-cluster-raft" --node-grpc-addrs "[email protected]:5363" "[email protected]:5363" "[email protected]:5363" --raft-peer-addrs "[email protected]:6003" "[email protected]:6003" "[email protected]:6003"   

  docker run -d --name rmqtt2 -p 1885:1883 -p 8885:8883 -p 11885:11883 -p 6065:6060 -v /app/log/rmqtt/2:/var/log/rmqtt  rmqtt/rmqtt:latest --id 2 --plugins-default-startups "rmqtt-cluster-raft" --node-grpc-addrs "[email protected]:5363" "[email protected]:5363" "[email protected]:5363" --raft-peer-addrs "[email protected]:6003" "[email protected]:6003" "[email protected]:6003"   

  docker run -d --name rmqtt3 -p 1886:1883 -p 8886:8883 -p 11886:11883 -p 6066:6060 -v /app/log/rmqtt/3:/var/log/rmqtt  rmqtt/rmqtt:latest --id 3 --plugins-default-startups "rmqtt-cluster-raft" --node-grpc-addrs "[email protected]:5363" "[email protected]:5363" "[email protected]:5363" --raft-peer-addrs "[email protected]:6003" "[email protected]:6003" "[email protected]:6003"

Node IDs: 1, 2, 3; Node IP Addrs: 172.17.0.3, 172.17.0.4, 172.17.0.5

Create a static cluster by docker-compose

  1. Download docker-compose configuration template

  2. Start docker-compose cluster

docker-compose up -d
  1. View cluster
curl "http://127.0.0.1:6066/api/v1/brokers"

Installing via ZIP Binary Package (Linux、MacOS、Windows)

Get the binary package of the corresponding OS from RMQTT Download page.

Experience

Popular Messaging Projects
Popular Mqtt Projects
Popular Messaging Categories
Related Searches

Get A Weekly Email With Trending Projects For These Categories
No Spam. Unsubscribe easily at any time.
Rust
Internet Of Things
Mqtt
Messaging
Pubsub
Message Queue
Tokio
Message Bus