6

EC2 ELB に関する 2 つの質問:

まず、JMeter テストを適切に実行する方法です。次のhttp://osdir.com/ml/jmeter-user.jakarta.apache.org/2010-04/msg00203.htmlを見つけました。これは基本的に -Dsun.net.inetaddr.ttl=0 を設定するように言っていますJMeter を開始する (これは簡単です)。2 つ目のポイントは、ルーティングが要求ごとではなく IP ごとであるということです。したがって、jmeter インスタンスのファームを開始する以外に、それを回避する方法がわかりません。任意のアイデアを歓迎します。または、説明を読み間違えている可能性があります(?)

また、Java の別の Web サービス (および両方とも ELB の背後) に対してサーバー側の呼び出しを行っている Web サービスがあるため、HttpClient を使用しています。接続マネージャー。そして、接続がキャッシュされているため(また、リクエストがすべて同じマシンから発信されているため)、ELBの負荷分散動作が壊れるかどうか疑問に思っています。毎回新しい HttpClient を使用するように切り替えることができますが (ちょっと不自由です)、すべてのリクエストが少数のホストから発信されているという事実を回避することはできません。

バックストーリー: EC2 で ELB を使用してサービスのパフォーマンス テストを行っていますが、トラフィックが均等に分散されていません (ほとんどのトラフィックが 1 ~ 2 ノードへ、1 ノードへのトラフィックはほとんどなく、4 番目のノードへのトラフィックはまったくありません)。したがって、上記の問題は、私が特定した考えられる原因です。

4

2 に答える 2

1

私は非常によく似た問題を抱えていました。1 つのことは、ELB がバースト負荷の下で適切にスケーリングされないことです。したがって、テストしようとしても、すぐにスケールアップするわけではありません。それが上に移動するのに多くの時間がかかります。もう 1 つの欠点は、DNS ルックアップとして CNAME を使用することです。これだけで失速します。調査できるパフォーマンスの問題は他にもあります。

私のお勧めは、haproxy を使用することです。より多くの制御が可能になり、パフォーマンスが気に入るはずです。私はそれにとても満足しています。ハートビートを使用して冗長サーバーをセットアップしました。

また、ELB で SSL を実行する予定がある場合は、パフォーマンスが標準以下であることがわかったため、さらに苦しむことになります。

それがいくつかの助けになることを願っています。結局のところ、AWS は、ELB の負荷テストは実際には機能しないと個人的に言っており、大量の負荷で起動する予定がある場合は、事前にスケールアップできるように伝える必要があります。 .

于 2012-02-10T22:29:09.583 に答える
1

実行している jmeter インスタンスの数はわかりませんが、私の経験では、スケーリングしている AZ の数の約 2 倍になるはずです。それでも、負荷のバランスが取れていない可能性があります。負荷がバックエンド フリート全体で正確にスケーリングされることは非常にまれです。

jmeter インスタンスをさまざまなリージョンで実行することで (少し) 支援できます。

もう 1 つの要因は、テストの期間です。ELB のスケールアップには時間がかかります。通常、ELB 名に対して nslookup を実行すると、実行中のインスタンスの数を知ることができます。スケーリング パターンを理解し、それらに基づいてテストを作成します。(したがって、別のインスタンスを ELB プールに追加するのに 20 分かかる場合は、テストに 25 ~ 30 分のウォームアップを含めます。) また、必要に応じて、AWS に ELB プールを「事前ウォームアップ」させます。

ELB プールのサイズがテストに十分であり、テストの実行中にプールが変更されないことを確認できる場合は、いつでも ELB IP に対して直接テストを実行してみることができます。つまり、手動でトラフィックを分散させます。

第 2 層の呼び出しで何が起こると予想されるかはわかりません。接続を開いて再利用する場合、接続を閉じて再度開くことなくインスタンス間でスケーリングする方法は明らかにありません。これらの呼び出しは、同じサーバー セットで実行されていますか、それとも別のセットで実行されていますか? 内部 ELB を作成し、そのエンドポイントを使用して接続できますが、説明したシナリオでそれが役立つかどうかはわかりません。

于 2016-04-24T15:18:01.530 に答える