web-dev-qa-db-ja.com

HTTPトラフィックをファンネル

私はオンデマンドで大規模なサーバー(x)の大規模なバッチがある状況を持っています、より小さなウェブサーバー(y)のセットからデータを要求する必要があります。

最悪のシナリオは、X内のすべてのサーバーがYの異なる要求を1つのサーバーに取得することを決定した場合である。それはXの接続量であり、これは非常に大きなトラフィックのバーストである可能性があります。ベストケースシナリオは、X内の1サーバーがタンデムでY内の1サーバをHITにHITHにする場合です。人生はこのように機能しません。

XとYの間のSQUIDと同様に、楽しませることの1つの考えはプロキシを配置しています。すべてのXサーバーはこのプロキシに接続できますが、いくつかの永続性(HTTPキープアライブ)接続がY。 4、それは漏斗するでしょう。それでは、それらの接続と交通量を制限することができれば、異常に高いスパイクを決定すると、私たちは自分自身を傷つけないでしょう。

考え?

1
spencer p

負荷分散を検討しましたか?これを達成するさまざまな技術があります。私の好みは [〜#〜] lvs [〜#〜] Webサーバーの負荷分散に適用される他のソリューションには含まれます。

LVSには異なる スケジューラ があります。これは、接続の処理方法を正確に指定します。それはまた非常に軽量であり、私は大量のWebサイトのトラフィックを処理する小さな商品ハードウェアでそれを実行します。

1
Warner

nginx 逆プロキシ/キャッシング構成で見て、あるいはApacheでより快適な場合は、Apache2 + mod_proxymod_proxy_balancer および mod_cache

1
gravyface