asopi tech
asopi techIndie Developer

Asopitech VS

EMQX vs Alopex Chirps

EMQXのMQTTブローカー、クラスタの構成、ライセンスの扱いと、Alopex Chirpsとの役割分担を紹介します。

更新: 2026/10/15

EMQXとは

EMQXは、IoTのデータ基盤のための、大規模な分散型MQTTメッセージング基盤です。MQTT 5.0、3.1.1、3.1に加え、MQTT-SN、CoAP、LwM2M、QUICの上のMQTTに対応します。

仕組み

  • ブローカー:機器はMQTTのクライアントとしてEMQXに接続し、トピックでメッセージを受け渡します。
  • クラスタ:複数のノードが、クライアントのセッション、トピックの購読、ルーティングの情報を共有します。
  • MriaとRLOG:書き込みを扱うコアノードから、読み取り専用のレプリカントノードへ、非同期でデータを複製します。

主な機能

  • 大量の機器の同時接続。
  • メッセージを加工して振り分けるルールエンジン。
  • バックエンドのデータシステムとの連携。

制限

EMQXは、オープンソース版とエンタープライズ版を統合し、ソース公開型のBusiness Source License 1.1に移りました。本番で無料で使えるのは単一ノードです。クラスタの機能は試用期間のあとに商用ライセンスを必要とし、ライセンスのないクラスタの機能は無効になります。

Alopex Chirpsとの違い

どちらも、ノードの間でメッセージを運び、QUICを使えます。

EMQXは、数多くの機器をMQTTでつなぐ場面の中心に立つブローカーです。Alopex Chirpsは、Rustのアプリに組み込むライブラリで、サーバー側のノードどうしがQUICで直接やりとりする場面を受け持ちます。gossipのメンバーシップとRaftの合意も同じライブラリで使えます。機器との接続はEMQX、その先のノードの連携はAlopex Chirps、という分け方ができます。

サーバー側のノードの連携をAlopex Chirpsで組むと、どれだけ短いコードで済むか。Alopex Chirps(GitHub)で見てください。

参考資料

関連ページ