このトピックでは、ApsaraMQ for MQTT コンソールで指定されたトピックのサブスクリプションクリーンアップ機能を構成する方法について説明します。
背景情報
以下の項目では、サブスクリプションクリーンアップ機能の背景と課金情報について説明します。
トピックに対してサブスクリプションクリーンアップ機能が構成されると、サブスクライバークライアントが指定された制限を超える期間オフライン状態を維持した場合、ApsaraMQ for MQTT はサブスクライバーとトピック間のサブスクリプションを削除します。 サブスクリプションがクリアされていない場合、サブスクライバークライアントがオフラインのときもサブスクリプションは有効なままです。 クライアントが再びオンラインになると、ApsaraMQ for MQTT はオフラインメッセージを自動的にロードしてクライアントに送信します。
オフラインメッセージに鮮度要件がある場合、または特定のビジネスにサブスクライバーが無効であり、不要になったと判断した場合、この機能を有効にして、サブスクライバーとそのサブスクライブしたトピック間のサブスクリプションをクリアできます。
ApsaraMQ for MQTT は、QoS パラメーターと cleanSession パラメーターの値に基づいて、オフラインメッセージを自動的にロードしてクライアントに送信するかどうかを判断します。 詳細については、「用語」をご参照ください。
サブスクリプションの変更は、関連インスタンスの課金に影響します。 詳細については、「課金概要」をご参照ください。
手順
サブスクリプションクリーンアップ機能を有効にすると、クライアントはオフラインメッセージを受信できません。 注意して進めてください。
ApsaraMQ for MQTT コンソール にログインします。 左側のナビゲーションペインで、インスタンスリスト をクリックします。
上部のナビゲーションバーで、管理するインスタンスが存在するリージョンを選択します。 [インスタンス] ページで、インスタンス名をクリックして インスタンスの詳細 ページに移動します。
左側のナビゲーションペインで、トピックの管理 をクリックし、サブスクリプションクリーンアップ機能を構成するトピックを見つけ、操作 列で を選択します。
[自動クリーンアップサイクルの設定] パネルで、自動サブスクリプション関係のクリーンアップを有効化する と クリーンアップ周期 を設定し、[OK] をクリックします。
自動サブスクリプション関係のクリーンアップを有効化する を はい に設定すると、クライアントの最後のハートビート時間と現在のシステム時間の差が クリーンアップ周期 の値以上の場合、システムはサブスクライバーとトピック間のサブスクリプションをクリアします。サブスクリプションがクリアされると、クライアントはトピックによって生成されたオフラインメッセージを受信できなくなります。
重要クライアントが再びオンラインになると、サブスクリプションがクリアされる前に生成され、有効期間内にあるオフラインメッセージを受信できます。
自動サブスクリプション関係のクリーンアップを有効化する を いいえ に設定すると、サブスクライバークライアントがオフラインの場合、システムはサブスクライバーとトピック間のサブスクリプションをクリアしません。サブスクリプションは有効なままです。
構成が完了すると、トピックの サブスクリプション関係のクリーンアップ周期 列でサブスクリプションクリーンアップサイクルを表示できます。