web-dev-qa-db-ja.com

コンピューティング時間またはコスト/時間を構成するもの

序文

私はクラウドベースのホスティングソリューション、特にMS AzureとAmazonのEC2を探し回っています。 Microsoft および Amazon には、「コスト/時間」/「コンピューティング時間」を示す価格表があります。

質問

彼らが「コスト/時間」または「計算時間」と言うとき、1時間には何が入っていますか? ASP.NETアプリの場合、アプリケーションプールがアクティブな時間ですか。または、アプリケーションがアクティブである時間の長さは?または、時間/分あたりの受信リクエストに何らかの方法で関連していますか?

アプリがアクティブではない(リクエストを処理している)場合、全体的なコスト計算に考慮されず、全体的な「計算時間」が短縮される可能性はありますか?

25
culturalanomoly

1時間は、アプリがデプロイされた時間としてカウントされます(実行中かどうか、アクセスされているかどうか)。 1時間は「ウォールクロック」時間です。つまり、10:45amにデプロイして11:05 amに削除した場合、2時間(10時と11時)が課金されます。

17
mcollier

デビッドとマイクによる良い答え。 appsの観点から考えるのではなく、仮想マシンについて考えてみましょう。その仮想マシンが起動すると(停止状態であっても仮想マシンが割り当てられます)、課金されます。その仮想マシンインスタンス内でアプリを簡単に開始および停止できます。たぶん、それはWebアプリケーション、バックグラウンドレンダリングプロセスなどです。 0%のCPUでも100%のCPUでも、仮想マシンの時間単位で支払います。

クラウドサービス(Webおよびワーカーロール)を使用しても、最終的には仮想マシンを扱うことに注意してください。 Webロールまたはワーカーロールの各インスタンスは、独自のWindows Server仮想マシンです。

ああ、同じことがWebサイトの予約済みインスタンスにも当てはまります。

アプリケーションをオフに切り替えて請求可能な時間を節約するという質問について:たとえば、夜間プロセスが1時間または2時間実行される場合は、そのプロセスを独自のクラウドサービス(または仮想マシン)に配置することを検討してください。実行する時間になったら、名前付きスロット(yourname.cloudapp.net)に展開し、タスクが完了するまで実行させてから、展開を削除します。これで、プロセスをホストしている仮想マシンインスタンスは24時間ではなく2時間実行されます。できることできないとは、Webまたはワーカーロールの数をゼロに減らすことです。したがって、たとえば、2つのインスタンスを持つWebロールと、毎晩何かを行うワーカーロールがある場合、タスクの完了時に、カウントをゼロのワーカーロールインスタンスに設定することはできません。そのため、毎晩のタスクを独自の配置に配置することを提案しました。

[〜#〜] edit [〜#〜]過去数か月の間、状況は少し変わっています。特に、2013年6月に次のことが発表されました。

  • 課金は、1時間あたりではなく、1分あたりになりました。これは、仮想マシン、クラウドサービス(Web /ワーカー)、Webサイト、およびモバイルサービスに適用されます。
  • 仮想マシンを削除せずに停止できるようになり、VMが停止している間は課金が停止します。注:同じデプロイメントで他の仮想マシンが実行されていない場合は、割り当てられたIPアドレスが失われます。IPの損失を防ぐには、仮想マシンを停止する必要がありますが、プロビジョニングされた状態のままにしておく必要があります。つまり、停止した分については請求されますVM =ただし、IPアドレスは保持します。この警告は、他の仮想マシンが実行されていないシナリオにのみ適用されます。

毎分および停止したVMの更新についてのScottGuのブログ投稿 here を読むことができます。

27
David Makogon

より明確に言うと、アプリがデプロイされる時間は、アプリをホストするサーバー/インスタンスがアクティブである時間を意味します。実際には、時間はクロック時間で測定されます。

[編集済み]「停止」VM)はコンピューティング時間を消費しなくなりました。VMを削除することを決定するまで、ストレージ/管理対象ディスクによってのみ課金されます。

2
David Rodriguez