割り当てと上限

Cloud IoT Core にはリソースの割り当てと使用に上限があり、プロジェクトごとに割り当てが適用されます。具体的なポリシーは、リソースの可用性、ユーザー プロファイル、サービス使用量の履歴などの要因に応じて異なり、予告なく変更される場合があります。

上限

このセクションでは、Cloud IoT Core に対する割り当てを、プロジェクト / デバイス / テレメトリー、レート、時間の 3 つのカテゴリに分類して説明します。

プロジェクト、デバイス、テレメトリーの上限

割り当て 上限 上限引き上げ可能
リージョンごとのプロジェクトあたりデバイス数 上限なし、デフォルト値は 100,000
リージョンごとのプロジェクトあたりデバイス レジストリ数 100
デバイス ID の長さ 256 バイト ×
デバイス レジストリ ID の長さ 256 バイト ×
デバイス メタデータ 500 Key-Value ペア ×
デバイス メタデータ キー 128 文字 ×
デバイス メタデータ値 32 KB ×
メタデータの Key-Value ペアを組み合わせたサイズ 256 KB ×
デバイスあたりの認証情報数 3 ×
デバイスあたりの構成バージョン数 10 ×
デバイス構成データ 64 KB ×
リスト リクエストの最大ページサイズ 500 ×
デバイス状態ペイロード 64 KB ×
テレメトリー イベント通知構成数 10 ×
テレメトリー イベント ペイロード 256 KB ×
デバイスあたり MQTT 接続数 1 ×
リージョンごとのプロジェクトあたりのオープンな MQTT 接続数 10,000
リージョンごとのプロジェクトあたりのアクティブな HTTP デバイス接続数(過去 5 分間) 10,000

レート制限

割り当て 上限 上限引き上げ可能
デバイスあたり HTTP デバイス テレメトリー パブリッシュ数 毎分 6,000 ×
プロジェクトあたりデバイス テレメトリー パブリッシュ数 上限なし、デフォルト値は毎分 60,000
デバイスからクラウドへのデバイスあたりスループット 512 KB/秒 ×
クラウドからデバイスへのデバイスあたりスループット 512 KB/秒 ×
デバイスあたり構成更新回数 毎秒 1 ×
デバイスあたり属性更新回数 毎秒 1 ×
レジストリあたり属性更新回数 毎秒 1 ×
プロジェクトあたりデバイス マネージャー API 読み取り呼び出し数 毎分 30,000
プロジェクトあたりデバイス マネージャー API 作成呼び出しおよび削除呼び出しの数 毎分 3,000 ×
プロジェクトあたりデバイス マネージャー API 更新呼び出し数
(次の行の例外を参照)
毎分 3,000
プロジェクトあたりデバイス マネージャー API modifyCloudToDeviceConfig 呼び出し数 毎分 6,000
接続あたりの毎秒 MQTT 受信メッセージ数 毎秒 100 ×
デバイスあたりのデバイス MQTT 接続数 毎秒 1 ×
プロジェクトあたりのデバイス MQTT 接続数と HTTP リクエスト数 毎分 60,000 ×
デバイスあたり状態更新回数 毎秒 1* ×
プロジェクトあたり状態更新回数 毎分 6,000* ×
プロジェクトあたりのログに記録されたイベント数 毎秒 1,000
プロジェクトあたりのログに記録されたイベントのサイズ 毎秒 1 MB(各ログエントリは約 1 KB)
レジストリあたりのコマンド 毎秒 1,000
プロジェクトあたりのコマンド 毎秒 1,000
デバイス接続あたりのコマンド トピックに対する MQTT サブスクリプション 毎秒 1 ×

*詳しくは、デバイスの状態の取得をご覧ください。

時間の制限

割り当て 上限 上限引き上げ可能
JWT 承認クロックのずれ 10 分 ×
JWT の全期間(exp - iat の値が超えてはならない値) 24 時間 ×
MQTT アイドル時間(ハートビートやメッセージが無い) 20 分 ×
MQTT 接続時間 24 時間** ×
コマンドのタイムアウト 60 秒 ×
コマンドの再試行 60 秒 ×

** 接続がリセットされることがあります(サーバーの再起動時など)。

割り当ての適用

割り当てを超えたことによって発生する結果は、プロジェクトやリソース(レジストリやデバイスなど)によって異なります。

  • プロジェクトで割り当てを超えた場合: 利用状況が上限を下回るまでプロジェクトはブロックされます。まれな状況として、利用状況が上限を超えなくなっても、割り当て適用期間が継続することがあります。どの割り当ても超えていないにもかかわらず、プロジェクトがブロックされた状況が継続する場合は、しばらく待ってから再度試します。
  • MQTT 接続を使用しているデバイスで割り当てを超えた場合: デバイスの接続が解除されます。
  • HTTP 接続を使用しているデバイスで割り当てを超えた場合: デバイスで RESOURCE_EXHAUSTED レスポンスを受信します。

たとえば、MQTT 接続を通じてデバイスの構成を 1 秒あたり複数回更新しようとすると、Cloud IoT Core によってデバイスの接続が解除されます。この問題を修正するには、デバイス構成のパブリッシュを必ず 1 秒あたり 1 回以下に抑え、理想的には 10 秒あたり 1 回にしたうえでデバイスを再接続します。詳細についてはデバイスの構成を参照してください。

割り当て量の増加

各上限は、デフォルトでその最大値に設定されています。最大値を超える上限をリクエストする手順は以下のとおりです。

  1. Google Cloud Platform Console の [API とサービス] で、編集する割り当てを選択します。

  2. [割り当てを編集] をクリックします。

  3. [割り当てを編集] ペインで所要事項を入力して [次へ] をクリックします。

  4. [割り当ての増加を申し込む] をクリックし、[割り当てのリクエスト] フォームに所要事項を入力して送信します。

増加を必要とする割り当てが GCP Console に表示されない場合は、[割り当てのリクエスト] フォームを使用します。

圧縮 HTTP リクエスト

HTTP 接続の使用の説明にあるとおり、HTTP 接続を通じ、gzip 圧縮したデータをデバイスから Cloud IoT Core に送信できます。

テレメトリー イベントのペイロードとデバイス状態のペイロードに対する上限は、各リクエストの非圧縮サイズを使用して計算されます。

たとえば、10 KB に圧縮したテレメトリー イベントのペイロードを送信する場合、圧縮していない元のペイロードのサイズが 257 KB であると、テレメトリー イベントのペイロードに対する上限である 256 KB を超えているため、このリクエストは失敗します。

このページは役立ちましたか?評価をお願いいたします。

フィードバックを送信...

Cloud IoT Core Documentation