smart-mqttは、Javaで開発されたMQTTブローカーサービスであり、smartboot組織の下で最初の真のIoT指向のソリューションでもあります。これは、企業が安定した信頼性の高いIoTサービスを低コストで迅速に構築し、すべてのものの相互接続を容易にするのを支援することを目的としています。
smart-mqttの基盤となる通信は、完全なmqtt v3.1.1プロトコルのエンコードとデコードの仕様を実装した非同期ノンブロッキング通信フレームワークsmart-socketを採用しており、将来的にはmqttv5.0やその他のIoTプロトコルのサポートを検討します。
プロジェクト開発
- 2018年にsmart-mqttプロジェクトが作成され、基本的なプロトコルのエンコードとデコードの構造が完成しました。
- 2019年から2021年まで、プロジェクトは基本的に中断状態にあり、その間、基盤となる通信フレームワークのスマートソケットのパフォーマンスの向上に重点が置かれます。
- 2022年3月に、smart-mqttを再起動します。
コンテンツを更新する
- ✅MQTTv3.1.1 プロトコル標準をサポート
- ✅Qos0 、 Qos1 、Qos2メッセージングをサポートします。
- ✅サポート はメッセージを送信します
- ✅サポート 保持メッセージ
- ✅ ハートビートメッセージをサポートする
- ✅プラグ インデザインモード
- ✅mqtt クライアント関連機能
- ✅エレガントな シャットダウン
- ✅ ブローカーのライフサイクルとさまざまなイベントの監視
- クライアント認証
- クラスタ展開モードをサポートする
- ワイルドカードサブスクリプションモードをサポートする
- 正確なフロー制御
- 追加されます。。。
デモ
ステップ1:MQTTブローカーを起動します
MQTTブローカーサービスは2つの方法で開始できます。
1つ目は、プロジェクトのソースコードをダウンロードした後、smart-mqtt-brokerモジュールでBoostrapプログラムを実行することです(下の図を参照)。
2つ目は、バイナリ配布パッケージを介してブローカーサービスを開始し、binディレクトリに入った後にstart.shスクリプトを実行することです。パッケージのダウンロードアドレスは次のとおりです:https ://gitee.com/smartboot/smart-mqtt/releases
ステップ2:MQTTクライアントを起動する
smart-mqttは、比較的基本的なクライアント機能を提供するようになりました。これは、次の図に示すコードから開始できます。もちろん、MQTTプロトコルに準拠するサードパーティのクライアントを使用してsmart-mqttブローカーに接続することもできます。
参考文献
- 「MQTTプロトコル3.1.1中国語版」
- カーペット
やっと
smart-mqttはコード開発の段階にあり、機能、ドキュメント、製品計画にはまだ多くの欠陥があります。このプロジェクトは、私が過去に開発したオープンソース作品の中で最も難しいものではありませんが、最も複雑である必要があります。通信、MQTTプロトコル仕様、メッセージキュー、分散アーキテクチャ、メッセージ品質、データ永続性などが含まれます。A一連の技術的課題。MQTT Brokerを本番アプリケーションで成熟させるには、数か月の研究開発が必要と控えめに見積もられています。このプロジェクトに関心のある友人は、交換のためのメッセージを残してください。