Cloud Run: containerConcurrency(インスタンスあたりの最大同時リクエスト数)

概要

  • インスタンスあたりの最大同時リクエスト数
  • Cloud Run サービスでは、リビジョンのスケーリングが自動的に行われる
  • すべての受信リクエストを処理できるように、必要なインスタンスの数が調整される
  • リクエストを処理するインスタンスが増えると、CPU とメモリの消費量も増加し、コストも高くなる
  • より細かく制御するために、Cloud Run では、インスタンスあたりの最大同時リクエスト数を設定し、1つのインスタンスで同時に処理可能な最大リクエスト数を指定できる

インスタンスあたりの最大同時リクエスト数

  • デフォルトでは、各 Cloud Run インスタンスは同時に最大 80 件のリクエストを受信できる
  • 1,000 件まで増やすことができる
  • 必要に応じて最大同時実行数を減らすこともできる
  • たとえば、コードで並行リクエストを処理できない場合は、同時実行を 1 に設定する
    • 1コンテナインスタンスが同時に処理するリクエストの数は最大1になる
    • 他のリクエストを捌くため、別のコンテナインスタンスが立ち上がる
    • ex. 同時に3リクエストが来た場合、最大同時リクエスト数が3 の場合は一つのコンテナインスタンスで3リクエストを受けるが、最大同時リクエスト数が1の場合は3つのコンテナインスタンスが立ち上がって、それぞれが一つのリクエストを処理する

参考: https://cloud.google.com/run/docs/configuring/concurrency?hl=ja 参考: https://cloud.google.com/run/docs/about-concurrency?hl=ja