MQTT broker implementation based on Vert.x.
Credits:
Moquette https://github.com/andsel/moquette
for coder and decoder implementation of MQTT messages.
Requires Vert.x 3.1.x and Maven 3+
git clone https://github.com/GruppoFilippetti/vertx-mqtt-broker.git
cd vertx-mqtt-broker
mvn clean install
run as normal java ...
java -jar target/vertx-mqtt-broker-<version>-fat.jar -c config.json
- Suport both QoS 0, 1 and 2 messages
- Persistence and session management (cleanSession=false)
- Multi-tenancy: isolation of topics and storage, (username@tenant)
- Pluggable authentication
- MQTT over WebSocket
- Retain flag
- Oauth2 authentication integrated with WSO2 Identity Server and apifest.com
- TLS support over TCP and Websocket
- Multiple tcp connections configurable in the same broker instance
- Broker-to-Broker bidirectional bridge over TCP, websocket with TLS support