2012-02-03 6 views
19

私は多くのマイクロインスタンスを持つEC2上のサイトをホストする方がいいでしょうか。すべてがロードバランサとして、1つまたはいくつかの大きなインスタンスの背後に座ります。私は私の理解が何であるか、そしてよく分かっている人は、私が間違っていると私を追加したり修正したりすることができますEC2サーバー、多数のマイクロインスタンス、またはそれよりも大きなインスタンス?

マイクロインスタンスを選択する主な理由はコストです。単一のマイクロインスタンスは平均で約0.35ECU、時間は0.02ドル、小規模のインスタンスでは1ECUに0.085ドルを提供します。 $/ECU/hourの計算を行うと、マイクロインスタンスは$ 0.057/ECU/hourになりますが、小さなインスタンスの場合は$ 0.085/ECU/hourになります。したがって、同じ平均コンピューティングパワーの場合、100マイクロインスタンスを選択すると、35マイクロインスタンスより安くなります。

マイクロインスタンスの主な問題はパフォーマンスの変動が激しいことですが、インスタンスが多数ある場合にはこれが問題になるかどうかはわかりません。

誰もこのような設定をベンチングして、利点と欠点を確認していますか?ありがとう、私は行く方法を選択しようとしている私にお知らせください!

PS:あなたのアプリがありますし、それがためにどのように信頼性の高いを必要とするアーキテクチャの種類によって異なります:私が言う主題の記事、http://huanliu.wordpress.com/2010/09/10/amazon-ec2-micro-instances-deeper-dive/

答えて

0

  • AWSのロードバランサはありません瞬間を提供しないでください(おそらくリアルタイムはより良い言葉ですか?) フェールオーバーの概念とは異なる自動スケール。これは のヘルスチェックで時々動作し、 はHTTPリクエスト(httpsを選択した場合はさらにオーバーヘッド)によって行われるため、わずかな遅延があります。
  • アーキテクチャに応じてインスタンスをさらに選択すると、より多くの障害点が発生します。それを避けるには、アプリはインスタンス間で非同期である必要があります。
  • 個以上のインスタンスを選択した場合、それらのバーストがアプリにあまり影響しないことを保証するために、アプリケーションをさらにベンチマークしてテストする必要があります。

これは私の見解であり、経験豊かな人々の間では非常に楽しい議論になるでしょう。

+0

感謝。私はELBがどのように動作しているのか分かりませんが、私はHAProxyを使用していますが、フェールオーバーは一般的にリアルタイム(500 msまたは1000 msのチェック) 。チェックはHEADまたはOPTIONリクエストでも行われるので、オーバーヘッドはそれほど大きくないはずですが、間違いなくそこにあるはずです。 また、私はたいていの場合、アプリケーションサーバーとは別の場所にデータベースを持っているので、アプリケーションサーバー自体は独立しているため、失敗したもののいくつかは問題ではないはずですが、置換インスタンスをスピンアップするとパフォーマンスに影響します確かに。 – Jd007

12

マイクロインスタンスにご注意ください、彼らはあなたを噛むかもしれません。私たちはすべてのマイクロインスタンス上にテスト環境を持っています。機能テスト環境なので、スムーズに動作します。しかし、私たちは、CPU使用率を上げるバグを知っていたいくつかのアプリケーション(まあ、Jetty 7.5.3)を更新したことがありました。 Amazonが利用可能なCPUを2%に抑えるので、これらのインスタンスは役に立たなくなりました。

また、マイクロインスタンスはEBSでバックアップされています。 EBSはCassandra or the likesのような高度なIO操作の場合はではなく、(インスタンスストアを超えていることを推奨)です。

お金を節約してソフトウェアがarchitected to handle interruptionsの場合、スポットインスタンスを選択することができます。それらは通常cost less than on-demand onesです。

これらがすべてあなたにとって問題でない場合、私はマイクロインスタンスが行く方法だと言います!:)

  • ​​
  • 関連する問題