私の質問 here および here に対する回答を得ようとしていましたが、vCPUのFargate実装を具体的に知る必要があることを理解しました。だから私の質問は:
pSこれはnode.jsアプリで、複数のプレーヤーが相互に作用してセッションを実行するため、最大容量のsinglenode.jsプロセスを提供したい。
Fargateは、バックグラウンドでECS(Elastic Container Service)を使用して、Fargateコンテナーを調整します。 ECSは、EC2がホストコンテナーに提供する計算リソースに依存しています。 AWS Fargateによると FAQ's :
Amazon Elastic Container Service(ECS)は、Dockerコンテナーをサポートし、Amazon EC2インスタンスのマネージドクラスターでアプリケーションを簡単に実行できる、非常にスケーラブルで高性能なコンテナー管理サービスです...
ECSは、Fargateによってプロビジョニングされたコンテナーを使用して、コンテナーのスケーリング、負荷分散、およびスケジュールの管理を自動的に行います
つまり、vCPUは基本的にEC2インスタンスのvCPUと同じです。 docs から:
Amazon EC2インスタンスはIntel Hyper-Threading Technologyをサポートしています。これにより、単一のIntel Xeon CPUコアで複数のスレッドを同時に実行できます。 T2インスタンスを除き、各vCPUはIntel Xeon CPUコアのハイパースレッドです。
だからあなたの質問に答えるには:
4つのvCPUをシングルスレッドアプリケーションに割り当てた場合、vCPUはシングルコアのハイパースレッドであるため、1つのvCPUのみが使用されます。
4つのvCPUを選択すると、基本的に4つのハイパースレッドを単一の物理コアに割り当てます。そのため、シングルスレッドアプリケーションは、依然としてシングルコアのみを使用します。
CPUリソースのより細かい制御が必要な場合(シングルスレッドアプリで使用できる複数のコアの割り当てなど)、Fargateを使用するのではなく、EC2起動タイプを使用(および独自のサーバーを管理)する必要があります。