Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/vogler75/monster-mq
MonsterMQ is a MQTT broker built on Vert.X and Hazelcast with data persistence through PostgreSQL.
https://github.com/vogler75/monster-mq
mqtt mqtt-server sparkplugb uns
Last synced: 15 days ago
JSON representation
MonsterMQ is a MQTT broker built on Vert.X and Hazelcast with data persistence through PostgreSQL.
- Host: GitHub
- URL: https://github.com/vogler75/monster-mq
- Owner: vogler75
- License: gpl-3.0
- Created: 2024-08-03T17:19:49.000Z (3 months ago)
- Default Branch: main
- Last Pushed: 2024-10-20T19:29:46.000Z (16 days ago)
- Last Synced: 2024-10-20T23:58:08.011Z (16 days ago)
- Topics: mqtt, mqtt-server, sparkplugb, uns
- Language: Kotlin
- Homepage: https://monstermq.com
- Size: 364 KB
- Stars: 13
- Watchers: 2
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Monster MQ
MonsterMQ is a MQTT broker built on Vert.X and Hazelcast with data persistence through PostgreSQL.
## Docker Image
> docker run -v ./config.yaml:/app/config.yaml rocworks/monstermq [-cluster] [-log INFO|FINE|FINER|FINEST|ALL]
## Build Locally
> cd broker
> mvn package
> java -classpath target/classes:target/dependencies/* at.rocworks.MainKt $@## Configuration
Use the YAML schema "broker/yaml-json-schema.json" in your editor.
```
Port: 1883
SSL: false
TCP: true
WS: false # Websockets
MaxMessageSizeKb: 512SessionStoreType: POSTGRES # POSTGRES, CRATEDB
RetainedStoreType: POSTGRES # MEMORY, HAZELCAST, POSTGRES, CRATEDBSparkplugMetricExpansion:
Enabled: true # Expand SparkplugB messages from spBv1.0 to spBv1.0e topicArchiveGroups:
- Name: "group1"
Enabled: true
TopicFilter: [ "test1/#" ] # list of topic filters
RetainedOnly: false # Store only retained messages or all
LastValType: POSTGRES # NONE, MEMORY, HAZELCAST, POSTGRES, CRATEDB
ArchiveType: POSTGRES # NONE, POSTGRES, CRATEDB, KAFKA- Name: "group2"
Enabled: true
TopicFilter: [ "test2/#" ]
RetainedOnly: false
LastValType: POSTGRES
ArchiveType: POSTGRES- Name: "video"
Enabled: true
TopicFilter: [ "video/#" ]
RetainedOnly: false
LastValType: NONE
ArchiveType: KAFKAKafka:
Servers: linux0:9092
Bus: # Use Kafka as the message bus
Enabled: false
Topic: monsterPostgres:
Url: jdbc:postgresql://192.168.1.30:5432/test
User: system
Pass: managerCrateDB:
Url: jdbc:postgresql://192.168.1.31:5432/test
User: crate
Pass: ""```