An ultra-lightweight and blazing-fast Messaging broker/bus for IoT edge & SDV
This is a pre-release for fixing some minor bugs. They are hard to hit but essential to fix.
Full Changelog: https://github.com/nanomq/nanomq/compare/0.21.8...0.21.9
Full Changelog: https://github.com/nanomq/NanoNNG/compare/0.21.8...0.21.9
This is a stable release of 0.21
Full Changelog: https://github.com/nanomq/nanomq/compare/0.21.6...0.21.8
Full Changelog: https://github.com/nanomq/NanoNNG/compare/0.21.6...0.21.8
Full Changelog: https://github.com/nanomq/nanomq/compare/0.21.6...0.21.7
This is a bug-fix version especially for refactored MQTT QUIC Bridging Please be cautious when trying this new toy! If you want a stable QUIC bridging. PLease turn to 0.19.6 tag/branch
Full Changelog: https://github.com/nanomq/nanomq/compare/0.21.5...0.21.6
This is a Bug-Fix release. Fix minor bugs of new QUIC MQTT SDK, HTTP WebServer, MQTTV5 decoding and add a new config param : exchange URL of MQTT Stream Especially for people who is using MQTT TLS feature (broker side), There is an important fix regarding socket close issue in transport layer. Plz update it to avoid FD exhaustion.
Full Changelog: https://github.com/nanomq/nanomq/compare/0.21.2...0.21.5
This is a minor release to update doc, upgrade log system and fix a config reading error
NanoMQ 0.21.1 is a republish of 0.21.0 in order to bring some important fixes such as : https://github.com/nanomq/nanomq/issues/1632
This Major release has two big new features: MQTT Stream and a New Plugin system along with multiple important fixes and minor new features.
A basic version of MQ : MQTT STREAM has been released, and its main ability is to persist the content of mqtt messages, for consumer to retrieve msgs by key.
First we introduce three data structures for MQTT STREAM.
The specific reference configuration is as follows.
exchange_client.mq1 {
# # exchanges contains multiple MQ exchanger
exchange {
# # MQTT Topic for filtering messages and saving to queue
topic = "exchange/topic1",
# # MQ name
name = "exchange_no1",
# # MQ category. Only support Ringbus for now
ringbus = {
# # ring buffer name
name = "ringbus",
# # max length of ring buffer (msg count)
cap = 1000
fullOp = 3
}
}
}
Notice:
For example, when the ringbus is full and you want to store the data to a file, you should use fullOp=3
Messages in ringbus are stored in the form of key/value, and currently the key is calculated using hash(clientid+topic+id).
If you want to query messages stored in a file, there's an interface, as well as a consumer demo.
./nng/demo/exchange_consumer/exchange_consumer.c
./demo/exchange_consumer/exchange_consumer "dumpfile"
./demo/exchange_consumer/exchange_consumer "dumpkey:4862831023852633869"
./demo/exchange_consumer/exchange_consumer "dumpkeys:2062146488009373518,2625100014974548622"
Full Changelog: https://github.com/nanomq/nanomq/compare/0.20.8...0.21
NanoMQ 0.21 is ready! This Major release has two big new features: MQTT Stream and a New Plugin system along with multiple important fixes and minor new features.
A basic version of MQ : MQTT STREAM has been released, and its main ability is to persist the content of mqtt messages, for consumer to retrieve msgs by key.
First we introduce three data structures for MQTT STREAM.
The specific reference configuration is as follows.
exchange_client.mq1 {
# # exchanges contains multiple MQ exchanger
exchange {
# # MQTT Topic for filtering messages and saving to queue
topic = "exchange/topic1",
# # MQ name
name = "exchange_no1",
# # MQ category. Only support Ringbus for now
ringbus = {
# # ring buffer name
name = "ringbus",
# # max length of ring buffer (msg count)
cap = 1000
fullOp = 3
}
}
}
Notice:
For example, when the ringbus is full and you want to store the data to a file, you should use fullOp=3
Messages in ringbus are stored in the form of key/value, and currently the key is calculated using hash(clientid+topic+id).
If you want to query messages stored in a file, there's an interface, as well as a consumer demo.
./nng/demo/exchange_consumer/exchange_consumer.c
./demo/exchange_consumer/exchange_consumer "dumpfile"
./demo/exchange_consumer/exchange_consumer "dumpkey:4862831023852633869"
./demo/exchange_consumer/exchange_consumer "dumpkeys:2062146488009373518,2625100014974548622"
Full Changelog: https://github.com/nanomq/nanomq/compare/0.20.8...0.21
This is a major fix version for QUIC Multi-Stream. Along with some minor fix for SDK & QoS Msg mechanism of bridging. Also add NFTP file-transferring feature.
Full Changelog: https://github.com/emqx/nanomq/compare/0.20.6...0.20.8
Full Changelog: https://github.com/nanomq/NanoNNG/compare/0.20.5...0.20.8
A customized release