📢 Webサイト閉鎖と移転のお知らせ
このWebサイトは2026年9月に閉鎖いたします。
新しい記事は移転先で追加しております。(旧サイトでは記事を追加しておりません)
| 233行目: | 233行目: | ||
==== 動作確認 ==== | ==== 動作確認 ==== | ||
===== QoSとは ===== | |||
QoS (Quality of Service) は、MQTTにおけるメッセージ配信の信頼性を保証するための仕組みである。<br> | |||
数字は信頼性のレベルを表しており、以下に示すような意味を持つ。<br> | |||
<br> | |||
* QoS 0 (At most once) | |||
*: 最も基本的なレベルである。 | |||
*: メッセージは1度だけ送信され、配信確認は行われない。 | |||
*: <u>ベストエフォート型</u>の配信で、メッセージが失われる可能性がある。 | |||
*: 例えば、センサデータのような、多少のデータ欠損が許容される用途に適している。 | |||
*: <br> | |||
* QoS 1 ((At least once) | |||
*: メッセージは少なくとも1回は配信されることが保証される。 | |||
*: 送信者は受信確認を待ち、確認が得られない場合は再送を行う。 | |||
*: メッセージの重複を許容できる場合に使用する。 | |||
*: 例えば、ログデータの収集などに適している。 | |||
*: <br> | |||
* QoS 2 (Exactly once) | |||
*: 最も信頼性の高いレベルである。 | |||
*: 4段階のハンドシェイクにより、メッセージが正確に1回だけ配信されることを保証する。 | |||
*: 金融取引や重要な制御命令等、メッセージの欠損も重複も許されない場合に使用する。 | |||
<Br> | |||
QoSレベルが上がるほど信頼性は向上するが、その分通信オーバーヘッドも増加する。<br> | |||
<br> | |||
===== サブスクライバー (購読者) の起動 ===== | ===== サブスクライバー (購読者) の起動 ===== | ||
mosquitto_sub -h <IPアドレスまたはホスト名 例: localhost> -t <購読するトピック 例: "test/topic"> -u <MQTTユーザ名> -P <MQTTユーザ名のパスワード> | mosquitto_sub -h <IPアドレスまたはホスト名 例: localhost> -t <購読するトピック 例: "test/topic"> -u <MQTTユーザ名> -P <MQTTユーザ名のパスワード> | ||
| 340行目: | 363行目: | ||
* --cafile | * --cafile | ||
*: CA証明書ファイルを指定する。 | *: CA証明書ファイルを指定する。 | ||
<br> | |||
===== 運用時の注意 ===== | |||
* セキュリティ | |||
*: 本番環境では必ずユーザ認証を使用する。 | |||
*: 機密性の高い情報を扱う場合はSSL/TLS暗号化を使用する。 | |||
*: パスワードをコマンドラインで直接指定する代わりに、環境変数や設定ファイルを使用することを推奨する。 | |||
<br> | |||
* エラーハンドリング | |||
*: 接続エラーや認証エラーの際のログを確認する。 | |||
*: 必要に応じて、<code>-d</code>オプション (デバッグモード) を付加して、詳細情報を確認する。 | |||
*: <br> | |||
* パフォーマンス | |||
*: 大量のメッセージを扱う場合はQoSレベルを適切に選択する。 | |||
*: リテインメッセージの使用は必要最小限に抑える。 | |||
<br><br> | <br><br> | ||