ドキュメント

サポート

Cloud Code

制限

Understand the API rate limits, data size limits, and other constraints for Cloud Code modules.
読み終わるまでの所要時間 2 分最終更新 23日前

Cloud Code モジュールには、処理できるデータ量に制限があります。

Cloud Code API

  • Cloud Code Client API サービスは、各プレイヤーを 1 分あたり 12,000 リクエストに制限します。
  • Cloud Code Admin API サービスは、各サービスアカウントを 1 分あたり 120 リクエストに制限します。
  • Admin API のレート制限の方が低いため、プレイヤーごとに Admin API を呼び出さないでください。

Cloud Code C# モジュール

  • モジュールを含む .ccm ファイルのサイズが 10 MB を超えることはできません。
  • プロジェクト内のすべての .ccm ファイルの合計サイズが 128 Mb を超えることはできません。
  • モジュールを実行するときのレスポンス本文 (モジュールの出力) の合計サイズは、2 MiB を超えることはできません。
  • プロジェクト内のすべての環境にまたがるモジュール数は 20 以下である必要があります。
  • モジュール関数の実行時間が 15 秒を超えることはできません。関数がこの時間制限を超えた場合、プロセスは強制停止されます。
  • モジュールは最大 10 個のタグを持つことができ、タグキーとタグ値ごとに使用できる最大文字数は 128 です。
  • モジュールが過去 15 分間にトラフィックを受信しなかった場合、コールドスタートの待ち時間が発生する可能性があります。その後のモジュールへの呼び出しは、より高速になります。
  • async void
    パターンはエラーの原因になります。常に
    Task
    または
    Task<T>
    を返します。非同期プログラミングのベストプラクティスについては、Microsoft の公式ドキュメント を参照してください。
  • Cloud Code は、Cloud Code 関数の静的メソッドをサポートしていません。

呼び出し間でのモジュールの永続性

モジュールの状態が呼び出し間で持続する保証はありません。モジュールは別のワーカーでリロードされる可能性があるため、モジュール関数の呼び出し間で常に共有状態に依存できるとは限りません。ただし、モジュールがロードされたままである間は、静的変数とシングルトン依存関係は呼び出し間で共有されます。 この動作を有効活用して、静的変数またはシングルトン依存関係にデータをキャッシュし、外部サービスからフェッチする必要があるデータの量を減らすことができます。データ (特にすべてのプレイヤーに対して一貫性を保つ必要のあるデータ) を保持するためにこのモジュールの動作を使用しないでください。

依存性注入

  • 複数のワーカーがある場合、API 呼び出しが毎回同じワーカーを対象にする保証はないため、モジュール関数呼び出し間の共有状態に依存しないでください。
  • Cloud Code のワーカーが 256 MB のメモリ制限を超えた場合、ワーカーは最終的にクラッシュします。
  • ICloudCodeSetup
    設定は、1 つのモジュール内の単一クラスによってのみ実装する必要があります。

プッシュメッセージ

  • WebSocket 接続経由で送信されるメッセージには 10 KB の制限があります。

UGS CLI とエディターのデプロイ

  • UGS CLI と Deployment (デプロイ) ウィンドウでは、同じプロジェクト内に複数のモジュールが含まれるモジュールをデプロイすることはできません。
  • UGS CLI と Deployment (デプロイ) ウィンドウはモジュールタグをサポートしていないため、それらを無視します。

エディターのバインディング

  • 生成されたバインディングでは、必須パラメーターとオプションパラメーターは区別されません。
  • タプルは、パラメーターまたは戻り値としてサポートされていません。

Cloud Code と他の Unity サービスのインテグレーション

  • すべての Unity サービスには、API の過剰な使用を防ぐためにプレイヤーごとのレート制限があります。Cloud Code レート制限は、ゲームとサーバーコード間で共有されます。例えば、Cloud Code とゲームの両方から Economy を使用する場合、予期しないレート制限エラーを受け取る可能性があります。これらのエラーをデバッグする際には、両方の使用タイプを考慮することが重要です。
  • モジュールは、モジュールを保存したのと同じ 環境 にデプロイする他の UGS リソースにのみアクセスできます。モジュールは、他の環境内のサービスにアクセスできません。
Cloud Code と統合する方法について詳しくは、他の Unity サービスとのインテグレーション のページを参照してください。