Rmqtt Versions Save

MQTT Server/MQTT Broker - Scalable Distributed MQTT Message Broker for IoT in the 5G Era

0.4.0

1 month ago
  1. Optimize plugins.
  2. Optimize Retainer Plugin.
  3. Create workflows/CI.yaml. https://github.com/rmqtt/rmqtt/actions/workflows/CI.yaml
  4. Bump up deps, tokio-tungstenite = "0.21", toml = '0.8'
  5. Fixed: "Max QOS in Connect ACK Protocol Question" https://github.com/rmqtt/rmqtt/commit/f0ba6289c08b2dac379106166cabe9dbb567f3eb https://github.com/rmqtt/rmqtt/issues/54

New Contributors

@gongzhengyang made their first contribution in @see

0.3.0

3 months ago

1.Implement the 'rmqtt-session-storage' plugin. Connection information, subscription relationships, offline messages, and in-flight messages will be stored. Upon node restart, session states that haven't expired will be restored, including subscription relationships, offline messages, and in-flight messages. more

2.Implement the 'rmqtt-message-storage' plugin. Published messages will be stored until they expire. Subscriptions to this message topic will be forwarded before the message expires. Messages will be automatically cleared after expiration. more

0.2.20

6 months ago
  1. Limit the number of concurrent Kick operations. https://github.com/rmqtt/rmqtt/commit/0d3a3d3bf034409bfa4c503616c6ee7e2b82cb4d
  2. Upgrade deps to leaky-bucket = "1.0"
  3. Upgrade deps to ntex = "0.3.21", ntex-mqtt = "0.6.21"

0.2.19

6 months ago
  1. Fixed the issue where, when restarting a node with a specified LeaderId, it erroneously attempted to forcibly establish itself as the Leader, even though a Leader already existed in the cluster. Now, it correctly obtains Leader information from other nodes. https://github.com/rmqtt/rmqtt/commit/443bc16a82c56e284a6a00dea11d22c89950a58f
  2. Fixed the problem in the HTTP API: /api/v1/subscriptions, where the format of the 'opts' field in the response was incorrect. https://github.com/rmqtt/rmqtt/commit/c9759c73865bbbe9c28dcad16e0376a04ed214fe
  3. Fixed the issue in the HTTP API: /api/v1/subscriptions/{client_id} where the 'client_addr' in the response is null. https://github.com/rmqtt/rmqtt/commit/e000efe39b2a7fe322094752e027f2106c609473

0.2.18

6 months ago
  1. When the system is busy, limit the message receiving rate. https://github.com/rmqtt/rmqtt/commit/159b137b0602b81222c90d49c9e49e4feb9e1268
  2. Operating system busy check, MQTT high-concurrency connection handshake check. https://github.com/rmqtt/rmqtt/commit/54dbc943e8d1af5e9774a4f51dca6561a8a8c2aa https://github.com/rmqtt/rmqtt/commit/79019faa29f56b23db6ee983063271445af0e3b7 https://github.com/rmqtt/rmqtt/commit/38a21b70e6b53dcc0e0f392147c5b2eec748fa5f https://github.com/rmqtt/rmqtt/commit/151fa8db7387f6524a7f284a3c2da3114e2779fe
  3. rmqtt-cluster-raft
  4. Optimize MQTT connection handshake, fix the issue of new connection requests being rejected after ntex-mqtt handshake timeouts in high-concurrency scenarios. https://github.com/rmqtt/rmqtt/commit/8a580bc93b34fe138b92e82205a4d29e9ecbf9fb
  5. Remove unneeded async trait and upgrade deps versions. https://github.com/rmqtt/rmqtt/pull/44
  6. Others

0.2.17

7 months ago
  1. Support environment parameter configuration. https://github.com/rmqtt/rmqtt/commit/23733a14f2ac16d3c897ba8f6bb0c517fe770c48 https://github.com/rmqtt/rmqtt/commit/c58b0b0431fcb2bbbcb7ad41095a7863c664e88b
  2. Add the 'raft_leader_id' item to the command line arguments. https://github.com/rmqtt/rmqtt/commit/4eb3080ec342eb329a89bd4212812ce21bb4ee8a
  3. plugin rmqtt-web-hook, if the group doesn't exist, it doesn't output: null . https://github.com/rmqtt/rmqtt/commit/631858b9edff51999807ca58ec134fa0a512a79d
  4. If the configuration does not specify writing file logs, then it is not necessary to create a log directory. https://github.com/rmqtt/rmqtt/commit/a2ee71e7d6e3e197a6865e4ef0ccbba008b536e5
  5. plugin rmqtt-cluster-raft, Allow specifying a Leader. https://github.com/rmqtt/rmqtt/commit/0f6f169826fed1cae6d8b39632cdabd3ec16636c
  6. Optimize code to reduce session memory usage. https://github.com/rmqtt/rmqtt/commit/6fff3793a75fe1f71b748507f63d68ece04a901f
  7. Add data statistics for in-flight input. https://github.com/rmqtt/rmqtt/commit/d73d1011434296d2f3c36277852b403109b132a2
  8. Upgrade to rust-box = "0.8", and use a global executor to forward messages to other nodes. https://github.com/rmqtt/rmqtt/commit/4bb3ba26224f5b036a2c6a2a62169eae8784484a
  9. Add config task.exec_workers and task.exec_queue_max. https://github.com/rmqtt/rmqtt/commit/e4cbea325f1a5105dcd9112bed67c7b43c9ec26c https://github.com/rmqtt/rmqtt/commit/61f6ac12c318a5ab9b293418fd0580a20296a4d5
  10. Other

0.2.16

8 months ago
  1. Add benchmark-testing.md. https://github.com/rmqtt/rmqtt/commit/810522024102b0b582e4d7bf6c2d0b3537952e7c https://github.com/rmqtt/rmqtt/commit/a2774d87ddf95e24c46decd133f77c4edfddba3f https://github.com/rmqtt/rmqtt/commit/0815e8527099f25659baae76c02cf97776adc6ae
  2. Remove dependency library 'lazy_static' and 'parking_lot::RwLock'. https://github.com/rmqtt/rmqtt/commit/626229412cf070d83fa2c3b18f90adbcd35ea15f https://github.com/rmqtt/rmqtt/commit/8a95437ed23bfd62914bd18e6dfa78927457edfa
  3. Upgrade deps to rmqtt-raft = "0.3.3", replace protobuf-codec with prost-codec. https://github.com/rmqtt/rmqtt/commit/23cd0ef4ee90c435a3f3973d79032efabb14857a
  4. Fixed the issue of losing hook messages after reloading the configuration and rebuilding the channel. https://github.com/rmqtt/rmqtt/commit/3ab5a38da6c28ac57263a4021eead97da0d83d8e
  5. Support x509 cross certificate. https://github.com/rmqtt/rmqtt/commit/b568db66b472d6efbb892d092936503479b4a1c9 https://github.com/rmqtt/rmqtt/commit/30e030e7ccad1fac5b731375967bc3daf6d48689 https://github.com/rmqtt/rmqtt/commit/215bfb2f9862ea62b7d9114e1e12514dec8330c8
  6. Add statistics for message_queues and inflights. https://github.com/rmqtt/rmqtt/commit/086c57c2ae660f8edb7db321e3021810d6f79ea0 https://github.com/rmqtt/rmqtt/commit/13766a584d8ed223ecd38ffb260e01cf0d0c4bdc
  7. Other

0.2.15

8 months ago
  1. Implement max_topic_levels configuration. https://github.com/rmqtt/rmqtt/commit/69ac9a9a7870b7d2acca59b35d98526a482e3ba8
  2. Supports maximum keepalive limit. https://github.com/rmqtt/rmqtt/commit/0c636ce571ea1f065cb9752c08e173c3394c3172
  3. Handling the case of clientid being 0. https://github.com/rmqtt/rmqtt/commit/4822e238f4664da2f7050eb6553f8ce3e85b4d1e
  4. Improve MQTT V5 protocol:
  5. Upgrade deps to ntex-mqtt = "0.6.18"

0.2.14

8 months ago
  1. Add config item 'allow_zero_keepalive', a value of zero indicates disabling the keep-alive feature, where the server doesn't need to disconnect due to client inactivity. https://github.com/rmqtt/rmqtt/commit/e253f4c4ea737eab112d28cf74750e4df4656d22
  2. Add load_config_default(), support using default values when plugin configuration doesn't exist. https://github.com/rmqtt/rmqtt/commit/8801cc4d2446f2a582087a9a93da77c418801364
  3. Remove the default value of ListenerInner::addr. https://github.com/rmqtt/rmqtt/commit/e95f94174ced353b4c7958b5631524957c416acf
  4. When publishing a message, if no subscription relationship is found, send a hook message and add 'nonsubscribed' statistical information. https://github.com/rmqtt/rmqtt/commit/719f881f65dea2de2ebecfa9d049025d83873956
  5. Adding statistics for publish, delivered, and acked from different sources. https://github.com/rmqtt/rmqtt/commit/0dd6193b16c51870d99801e09a7f934f85ed8666
  6. Send message_publish hook for 'admin', 'system' and 'lastwill'. https://github.com/rmqtt/rmqtt/commit/8a09d37031fcb66260dfd6d57fcebd6ce07d9eab
  7. Add From to MessagePublish hook. https://github.com/rmqtt/rmqtt/commit/4b7f1ed6f11f3fbb881389040c5453b8c83f3b07
  8. System message statistics are not collected. https://github.com/rmqtt/rmqtt/commit/0caf0e65a90b22a64d55c853ffb0595eafaf64cb
  9. Add plugin: rmqtt-sys-topic . https://github.com/rmqtt/rmqtt/commit/dd0015d2a285d7db68791b2dc7b9debb1227d627 https://github.com/rmqtt/rmqtt/commit/e3650cad6072c8af6b3569390b5d9a811e5804a1 https://github.com/rmqtt/rmqtt/commit/7102f814d8fd2e18df4db57d025a3ac6655e3466
  10. Add From and FromType types, Types contain:'custom', 'admin', 'system', 'lastwill'. https://github.com/rmqtt/rmqtt/commit/f9b6339cc5b38cf75cf6ad02b3c453680df6e05d https://github.com/rmqtt/rmqtt/commit/de06a2a239a34f38d74487a69f8055f60fe5409d
  11. Supports reuseaddr, reuseport, and configuration. https://github.com/rmqtt/rmqtt/commit/db895e5bd262e3c37baa7328f5af3b5e7cd813af https://github.com/rmqtt/rmqtt/commit/1297c30b72e63c9057aa51a5012ee6bda565687a https://github.com/rmqtt/rmqtt/commit/69f4cb5b8d759a55591e0c4c6cd300422bffbe41
  12. Upgrade deps to rmqtt-raft = "0.3.2". https://github.com/rmqtt/rmqtt/commit/5caacb0aa7966131308582e36969c2c60ef0b87b
  13. Upgrade deps to ntex = "0.3.19", ntex-mqtt = "0.6.16". https://github.com/rmqtt/rmqtt/commit/7d174b9da59aa22b0230019ebe2a1ff3b3b1273a
  14. Optimize the codes. https://github.com/rmqtt/rmqtt/commit/847d26a6d67330c056d7075d03362f39adce68d8

0.2.13

9 months ago
  1. rmqtt-cluster-raft
  2. Change tokio channel to futures channel. https://github.com/rmqtt/rmqtt/commit/16a9d7a631cf412124c8ef5273158a4ba18e5c64
  3. Optimize the MQTT client connection handshake process. https://github.com/rmqtt/rmqtt/commit/a629b9a96d832f3d6a36ca73efaf0cf7a7bb2ccf
  4. Optimize error message when plugin startup fails. https://github.com/rmqtt/rmqtt/commit/f1e28657dce0abcc51e07e816dc8b5a492060dbd
  5. PartialEq and Hash add create_time. https://github.com/rmqtt/rmqtt/commit/aba875f494a38d83b2fd3ffcf2f3096e88d663c5
  6. Administrators kick off connections and terminate sessions through APIs. https://github.com/rmqtt/rmqtt/commit/b611a63182b245b83878fbb0326732c40af9f7d2
  7. Use enumeration types to define reasons for disconnection and message drop. https://github.com/rmqtt/rmqtt/commit/d08ebe7ac9c7b2d96f8fd6c08dd5fe3d5b9e9c69
  8. MessageDropped hook when sending LastWill message failed. https://github.com/rmqtt/rmqtt/commit/c8c1486cf0b174a02ca00f429e1f450aae58be1b
  9. Session transfer does not send LastWill messages. https://github.com/rmqtt/rmqtt/commit/02828fbae20ef66a83ce69731c1b6af5d346df87
  10. rmqtt-http-api
  11. rmqtt-web-hook
  12. Update plugin configs. https://github.com/rmqtt/rmqtt/commit/e0fd6d8a78fdcb36957fcc70bd5c83ae9df2aed5 https://github.com/rmqtt/rmqtt/commit/fcfbbd34029e68610c9440806a5cfdb43287b930 https://github.com/rmqtt/rmqtt/commit/4704b119d63b507a320a07c73ded086ec8ef4c17
  13. Optimize the codes. https://github.com/rmqtt/rmqtt/commit/662ed4a27bb45b85652e0b5c621d3e65ed993e22 https://github.com/rmqtt/rmqtt/commit/4b0c8e5b92f429605c66a7f201f51c82bfc4e500 https://github.com/rmqtt/rmqtt/commit/ff5cb629339087d40be16aa5fab4d90906bd47af