AWSDBProxy を使用していますか?スケールアウト時にパフォーマンスに影響はありますか?

StackOverflow https://stackoverflow.com/questions/501946

質問

反対票を投じた後、自分の投稿が非常に重要なものであることに謙虚に気づきました 暴言を吐く. 。そこで、私が本当に知りたい質問だけを編集して要約しました。この編集の前に私の生意気なコメントをしたことをお詫びします;)

Rails サイトで Amazon の SimpleDB を使用することについて説明しているチュートリアルは、AWSDBProxy を使用しているだけのようです...以下の典型的な Rails サイト (AWSDBProxy を使用) のサーバー レイアウトを考慮すると、これはスケールアウトの直観に反していると個人的に感じます。

プラグインはこちら: http://agilewebdevelopment.com/plugins/aws_sdb_proxy

画像はこちら: http://www.freeimagehosting.net/uploads/91be4e0617.png

ご覧のとおり、雑種をさらに追加したとしても、2 つの問題があります。

  1. ロードバランサーよりもはるかに不安定な単一障害点があります。
  2. すべての情報をこれに強制的に通す必要があります WEBrickサーバー

解決策は、もちろん、AWSDBProxies をさらに追加することです...しかし、それなら、プロキシをすべてスキップして、たとえばクラスで次のコードを使用してはどうでしょうか?

service = AwsSdb::Service.new(Logger.new(nil),
                                CONFIG['aws_access_key_id'],
                                CONFIG['aws_secret_access_key'])
service.query(domain, query)

それで、私が言いたいのは、あなたが AWSDBProxy を使用する理由は何ですか?実際に使用している場合、パフォーマンスはどうですか?明確な数字がある場合は、さらに感謝されます。

ありがとう!

役に立ちましたか?

解決

私はそれを使用していませんし、聞いたこともありませんが、これが合理的な理由だと思います。

  1. メイン アプリ サーバーを EC2 上で実行しているため、インターネット障害が発生する可能性は一度だけではありません。
  2. 各アプリサーバーで 1 つのプロキシを実行します。したがって、接続がダウンすることは、データベースへの接続がダウンすることよりも悪いことではありません。
  3. それはできるからです。これは、オープンソース プロジェクトにおける他の理由と同様に十分な理由です。場合によっては、それが良いアイデアか悪いアイデアかを知る前に、何かを構築する必要があります。
  4. ロード バランサーが必要なトラフィック レベルがありません。その後、図は 1 つのマシンではないにしても、1 つの線に縮小されます。
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top