1

セッション間で状態はどのように管理されますか? Azure では、クライアント固有の状態が SQL Azure に格納されることを知っています。これはAWSでも同様に行われているのでしょうか?

アプリケーションのさまざまなインスタンスはすべて、状態が保存されている DB にアクセスしますか? 状態管理は、使用しているテクノロジによって大きく異なりますか?

4

1 に答える 1

3

「宿題」レベルでは、アマゾン ウェブ サービスは大まかに次の 2 つの異なるセットで構成されています。

  • 自分で管理するインフラストラクチャ サービス (EC2、EBS)
  • Amazon が管理する高レベルのサービス (S3、DynamoDB、ELB)

ファイルを S3 にアップロードすると、ファイルは多数の異なるデータ センター内の多数のマシンに保存されます。Amazon は、要求時にファイルを検索して返す責任があります (また、ファイルが消去されないようにします)。機械の故障です。)

EC2 で実行されているアプリケーションなど、インフラストラクチャ サービスの 1 つの上に構築されたものでは、状態を保存および同期する方法については自分で決める必要があります。

  • 1 台のサーバー、メモリ内の状態 (悪い)
  • 状態処理なしの負荷分散 (非常に悪い!)
  • スティッキー セッションによる負荷分散 (賢明ですが、それだけでは十分ではありません。そのサーバーがプールから落ちた場合、他のサーバーはあなたが誰であるかを知りません)
  • 共通の状態サーバーを持つサーバーとの負荷分散

どのように状態を保存しますか? 伝統的に、メモリ キャッシュ ( Amazon が管理する memcached 互換キャッシュである Elasticacheなど) を備えたデータベース (おそらく Amazon RDS )。Amazon の新しい DynamoDB サービスは、高速で冗長なキー値ストアとして、この用途に適しています。

于 2012-06-10T22:03:07.043 に答える