5

アプリ内ストアでGAEを使用するための月額費用を見積もろうとしていますが、インスタンスとは何か、1つのインスタンス内で何ができるのかがよくわかりません。

複数のクライアントを処理するために、複数のスレッドを持つ1つのインスタンスを作成できますか?また、アプリごとに1日あたり28時間の無料インスタンスがあるので(http://cloud.google.com/pricing/)、サーバーアプリを常に実行している場合に料金を支払わないということですか?

4

2 に答える 2

4

インスタンスは、クライアントへのリクエストを処理できる、コードを実行する仮想サーバーのインスタンスです。これは通常、利用可能なリソースを最も効率的に使用するために並行して行われます (ゴルーチン、Java スレッド、2.7 の Python スレッド)。

応答時間は、コードで何をしているかによって異なり、通常は IO に依存します。シリアル データベース ルックアップのウォーターフォールがある場合は、マルチゲットが 1 つしかなく、おそらく非同期書き込みがある場合よりも時間がかかります。

GAE との契約の一部は、Google が弾力性を処理することです。待機中の接続が多数ある場合、必要に応じて新しいインスタンスが開始されます (クォータがなくなるまで)。つまり、コードの効率性や必要なリソースの量が正確にわからないため、事前にコストを見積もることが難しい場合があります。より多くの使用がより多くの収入を意味し、リクエストあたりの収入がリクエストあたりのコストよりも高いスキームをお勧めします。:)

リクエストをキューで待機させたり、新しいリクエストを処理する準備ができている予備のインスタンスを常にいくつか用意したりして、設定を微調整できます。これは、コストとユーザーの応答時間に影響します.

IaaS シナリオでは、5 つのインスタンスを使用し、それがコストであると言うことができますが、実際には、現地時間の夜間に 1 つだけ必要で、それ以外の日中は 25 しか必要ない可能性があります。そうしないと、ユーザー エクスペリエンスが低下します。

通常、無料のインスタンスは、割り当てを使い果たすことなく、開発中にテスト トラフィックを処理できます。

于 2012-07-04T11:18:51.137 に答える
0

AppEngine は、リクエストを処理するために複数のインスタンスを実行する必要があると判断し、別のインスタンスを開始する場合があります。実行中のインスタンスを 1 つに制限することはできません。実際、リクエストが少ないように見えるときに AE が別のインスタンスを開始する理由が不明な場合がありますが、サービス提供インスタンスが制限に近すぎる場合に、リクエストを処理する準備ができている別のウォーム インスタンスが必要であると判断した場合は、AE が別のインスタンスを開始します。

于 2012-07-04T11:01:02.070 に答える