0

Webサービス(SaaS)として公開したいアプリケーションがあります。このアプリケーションはCPUを集中的に使用し、実行にかなりの時間(平均15〜20秒)かかるマルチスレッドアプリケーションです。それ以来、SaaSとして公開し、AmazonやGoogle App Engineなどの市場で利用可能な既存のクラウドサービスを使用して、サービスのスケーリングに伴うコストと作業がそれほど多くないようにしたいと考えています。私の頭の中には次のようないくつかの質問があります。

1.)アプリケーションはマルチスレッドであり、呼び出されるスレッドの数はサービスによってスローされる結果の数に依存するため(したがって、基本的にスレッドの数は動的エンティティです)。現在、6コアプロセッサを使用しているため、スレッドプールのサイズを6に維持していますが、クラウドに移行しているので、クラウドインフラストラクチャを最適に使用するにはどうすればよいですか?

2.)クラウドサービスプロバイダー(どちらですか?)は、各リクエストに必要なCPUコアの数(または私の目的に役立つもの)を選択するオプションを提供していますか?

3.)(スレッドに関連する)コードにどのような変更が必要ですか?

4.)クラウドに移動するために私が見なければならない他の特定の領域はありますか?

4

1 に答える 1

0

Amazon EC2では、基本的にさまざまなタイプのインスタンスに料金を支払っています。シングルコアのみのインスタンスと16個のインスタンスを自由に選択できます。あなたはあなたが支払うものを手に入れます。

どうすればクラウドインフラストラクチャを最適に使用できますか?

タスクがCPUを集中的に使用する場合は、CPUコア/CPUと同じ数のスレッドを持つスレッドプールを用意してください。

各リクエストに必要なCPUコアの数を選択します

いいえ、少なくともAmazonではありません。特定のインスタンスでアプリケーションを実行すると、それだけで済みます。事前にインスタンスタイプを選択する必要がありますが、もちろんいつでも自由に切り替えたり、新規追加したりできます。クラウド!

Google App Engineではスレッドを作成できないため、オプションはありません。参照:GoogleAppEngineが単一の実行スレッドのみをサポートするのはなぜですか。

3.)(スレッドに関連する)コードにどのような変更が必要ですか?

なし。結局のところ、これは標準のPCです。

4.)クラウドに移動するために私が見なければならない他の特定の領域はありますか?

さて、上記を参照してください。GAEのように、一部のサービスは完全に役に立たないものです。あなたが実際に何かにお金を払う前に、いくつかの調査をしてください。

于 2012-11-23T20:48:12.537 に答える