IoT

【MQTT】paho+golangでパブリッシュする

1.組込みでGo言語が流行っている…?

最近バックエンド言語として急速に人気が出ているGoogleのGo言語ですが、エッジシステム(組込みLinux)のアプリケーションとして採用している企業を最近聞くようになりました。

@tetsu_koba氏のQiita記事「組み込みLinuxでGolangのススメ」を読んでGo言語に興味が湧いたので、Goの勉強を始めつつ、最近遊んでいるMQTTでデータをパブリッシュするサンプルを動かしてみることにしました。

2.環境

GoのMQTTクライアントのライブラリには”paho”を使用します。ブローカー実装のmosquitto開発元のeclipseが提供しています。公式のgithubにサンプルコードがあるので、さくっと動かしてみます。

MQTTブローカーは前の記事で作成したコンテナ環境を使用してローカルで動かします。

また、ホストPCはUbuntu20.04を使用します。

3.動かしてみる

パブリッシュするコードです。AddBrokerのIPアドレスを適宜変えてください。

実行後、サブスクライバコンテナでデータが読み取れました。

user@0d9a995f5909:~$ mosquitto_sub -h 172.17.0.2 -t go-mqtt/sample
this is msg #0!
this is msg #1!
this is msg #2!
this is msg #3!
this is msg #4!

ABOUT ME
sh-goto
低レイヤで遊んでいます