問題タブ [haproxy]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
tomcat - tomcat での純粋に動的な Web アプリの負荷分散
私は本質的に純粋に動的な Web アプリを持っています (パブリック API を考えてください)。したがって、静的ファイル サービスや静的ファイル キャッシュの最適化は必要ありません。パフォーマンスと可用性のニーズにより、1 つの tomcat から複数の tomcat に移行する必要があります。現在、Apache mod_proxy_http を使用しており、最近 mod_proxy_ajp を試しています。しかし、apache はこれには重すぎると感じており、他の製品 (haproxy、nginx、proud など) がパフォーマンスと機能 (リクエストの制限、キューイングなど) の点で私のニーズにより適しているかどうか疑問に思っています。mod_proxy で現在使用している唯一の機能は、着信 URL を異なるコンテキストにマップすることです (たとえば、/abc は /def に移動する必要があります)。あなたの推薦は何ですか?(150 リクエスト/秒の負荷、リクエストごとに 50 ~ 1000 ミリ秒の処理時間、db io -separate mysql box- および network io -service call- によってバインドされていると考えてください)
ありがとう。
メテ
tomcat - Tomcat: Tomcat がすべてのリクエストに対してセッションを作成するのを止めるには?
HAProxy は tomcat に ping を実行し、非常に小さなページを要求しているため、Tomcat は 2 秒ごとに新しいセッションを作成します。特定のページに対して新しいセッションを作成しないように Tomcat にプログラムで (または構成を介して) 指示する方法はありますか?
node.js - 認証付きの HAProxy と socket.io でスティッキー セッションを行うことはできますか?
HAProxy で認証を実行する socket.io のインスタンスがいくつかあり、認証要求とソケット接続が同じインスタンスに送られるようにする必要があります。SOの質問に対するこの回答に基づいて、いくつかの変更を加えてHAProxyをセットアップしました。
url_param (sessionId は認証呼び出しと websocket 接続の両方で渡されるクエリ文字列パラメーター) と source をバランス オプションとして試しましたが、HAProxy は HTTP 接続に対してのみこれらのオプションを許可し、実際の websocket ではそれらを無視するようです。繋がり。その結果、認証リクエストとソケット接続が別のサーバーで終了することがありますが、これは私たちのアプリケーションでは受け入れられません。
この望ましい動作を実現する方法はありますか?
regex - HAProxyとURL書き換えの構成
URLの一部に応じて、HAProxyがリクエストのルーティングにどのように役立つかをお聞きしたいと思います。
セットアップの概要を説明するために、HAProxyマシンと2つのバックエンドがあります。
- IIS Webサイト(メインサイト)
- NGINX(サブサイト)に関するWordpressブログ
ユースケース:
URLに応じてリクエストをルーティングする予定です。
- www.website.com/lang/index.aspx->メインサイト
- www.website.com/lang/blog/articlexx->ブログサブサイト
ブログのアクセスURLは「/server/ blog / lang / articlexx」なので、元のクライアントリクエストをその形式に書き換える必要があります。つまり、基本的に「blog」と「lang」が切り替わります。
構成ドキュメントとネット上のいくつかの投稿をどのように理解したかから、リクエストHTTPヘッダーをバックエンドに渡す前に、reqrep/reqirepを使用して変更することができました。そうであれば、この構成は機能するはずです。
問題: blog_websiteバックエンドが受信するリクエストは、元のURL「x / lang/blog」のままです。
正規表現の部分で何かを見逃したかもしれませんが、私の主な関心事は、私の理解が正しいかどうか、そもそもreqirepを使用しないかどうかです。助けていただければ幸いです。
どうもありがとう。
apache - リバース プロキシとして Apache から HAProxy/nginx に移行することは可能ですか?
リバース プロキシとして Apache を使用しています ( mod_proxy
)。私たちにとって最も重要な機能は、Cookie パスの書き換えを含む URL マッピング (単純な URL 書き換え) です。驚くべきことに、nginx は Cookie パスを書き換えないことを知りました (ファクトリ モジュールを使用)。よくわかりませんが、HAProxy でこれができると思います。この仕事だけでは、Apache は重すぎます。では、この状況で何を使用するかについてコメントできますか? (バックエンドは Tomcat などの Java アプリケーション サーバーです)
- Apache を使い続ける
- 一部のサードパーティ モジュール (lua など) で nginx を使用する
- HAProxy を使用する
node.js - node.js を使用した comet の 250k 接続
node.js (socket.io を使用するクライアント側) で comet サーバーへの 250k のオープン接続を処理するにはどうすればよいですか?
プロキシ/ロードバランサーとしてnginxを使用することは正しい解決策でしょうか? それとも、HA-Proxy がより良い方法でしょうか? 100,000 以上の接続を実際に経験したことがあり、セットアップを共有できる人はいますか? このような:
node.js - HAProxy + NodeJS が TCP 再送信でスタックする
HAProxy + NodeJS + Rails セットアップがあり、ファイルのアップロードには NodeJS サーバーを使用します。
私が直面している問題は、haproxy を介して nodejs にアップロードしているときに、パケットが失われたために「TCP (高速) 再送信」が発生した場合、クライアントの TX レートが約 5 ~ 10 秒間ゼロに低下し、フラッディングされることです。 TCP 再送信あり。
NodeJS に直接アップロードした場合、これは発生しません (TCP 再送信も発生しますが、数十回の再送信試行でスタックすることはありません)。
私のテスト設定は、単一のファイル入力フィールドを持つ単純な HTML4 FORM (メソッド POST) です。NodeJS サーバーは受信データを読み取るだけで、他には何もしません。
これを複数のマシン、ネットワーク、ブラウザでテストしましたが、常に同じ問題です。
ファイルのアップロード中のクライアントからの TCP トラフィック ダンプを次に示します。
haproxy.conf (haproxy v1.4.18 安定版) は次のとおりです。
読んでくれてありがとう!:)
サイモン
proxy - Haproxy で GeoIP を使用する
データベース geoip Haproxy に接続するにはどうすればよいですか?
例。Haproxy は国と都市の IP アドレスを決定し、バックエンドに送信するために http ヘッダーを変更します。
websocket - haproxyとsocket.ioが完全に機能していません
ブログやstackoverflowに投稿された考えられるすべてのhaproxy構成を試しましたが、それでもhaproxyとsocket.ioを100%動作させることはできません。Webソケットを「サポート」するブラウザの大部分では、失敗し、心拍数を逃した後、長いポーリングにフォールバックします。ブラウザは初期接続(nodejsデバッグ)を行っているように見えますが、クライアントに接続応答を受信させることができません。他に同様の問題を抱えている人はいますか?以下は、ソフトウェアのバージョン番号と、私が試したいくつかの構成です。
- haproxy 1.4.18
- ノード0.6.5
- socket.io 0.8.7
Haproxy構成(私はもっとたくさんのオプションを試しました):
- http://engineering.bistri.com/post/14307969768/socket-io-haproxy-http-authentication
- HAProxy+WebSocketの切断
- http://pastebin.com/H3XNv0TQ
- http://www.darkcoding.net/software/proxy-socket-io-and-nginx-on-the-same-port-over-ssl/(マイナスsslのもの)
で動作するWebソケット:
- Safari 5(Windows)
- Chrome 11(Linux)