問題タブ [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.
ruby-on-rails - 特定のポートにリダイレクトを送信する
ポート9000でリッスンしているRailsアプリケーションサーバーがあり、haproxyを介して呼び出されています。そのサーバーからのすべてのリダイレクトは、ポート8000を介してリダイレクトされますが、ポート80で送り返される必要があります。
私はhaproxy+nginx+passengerの組み合わせを使用しています。実際のサーバーがリッスンしているポートに関係なく、すべてのリダイレクトがポート80を介して送信されていることを確認する方法はありますか?
haproxy、nginx、Passenger、またはRailsが変更されてもかまいません。特に指定がない限り、ほとんどのリクエストがポート80に返送されることを確認する必要があります。
ありがとう!
haproxy - https/tcp モードで haproxy acl が機能しない
いくつかの問題が発生しています。ACL を tcp モードで動作させることができないよう
です。すべてが http モードで動作します。
ここに私の設定があります。
元の IP を隠しているので、IP 10.10.10.10 には注意を払わないでください。https が機能しない理由を教えてください。http フロントエンド/バックエンド ACL ルールは正常に機能しています。
乾杯
regex - HttpLog形式を解析するための正規表現パターン
HttpLogFormatの文字列の正規表現パターンマッチャーを探しています。ログはhaproxyによって生成されます。以下は、この形式のサンプル文字列です。
形式の説明は、HttpLogFormatで入手できます。どんな助けでも大歓迎です。
私はその行に含まれる情報の個々の部分を取得しようとしています。フィールドは次のとおりです。
- process_name'[' pid']:'
- client_ip':' client_port
- '[' accept_date']'
- frontend_name
- backend_name'/' server_name
- Tq'/' Tw'/' Tc'/' Tr'/' Tt *
- status_code
- bytes_read
- Captured_request_cookie
- Captured_response_cookie
- 終了状態
- actconn'/' feconn'/' beconn'/'srv_conn'/'再試行
- srv_queue'/' backend_queue
- '{'captured_request_headers *'}'
- '{'captured_response_headers *'}'
- '"' http_request'"'
haproxy - HAproxyの機能
HAproxyが実際にどのように機能するかを誰かに教えてもらえますか?私はたくさん検索しましたが、HAproxy全体について簡単で簡単な説明が必要です。
rabbitmq - rabbitmqでhaproxyを設定する
haproxyとrabbitmqを設定する方法を知りたい。rabbitmqをよりスケーラブルで利用可能にしたい。
誰もが持っている任意のリンク任意のアイデア
http - http現代のキープアライブ
したがって、httpについて1つか2つのことを知っているhaproxyの作者によると:
Keep-aliveは、CPUが100倍遅いときにサーバーのCPU使用率を減らすために発明されました。しかし、言われていないことは、持続的接続は、それらを開いたクライアント以外の誰もが使用できない間、多くのメモリを消費するということです。現在、2009年のCPUは非常に安価であり、メモリはアーキテクチャまたは価格によって数ギガバイトに制限されています。サイトが存続する必要がある場合、実際の問題があります。負荷の高いサイトでは、最大数の同時クライアントをサポートするために、キープアライブが無効になることがよくあります。キープアライブがないことの本当の欠点は、オブジェクトをフェッチするための待ち時間がわずかに長くなることです。ブラウザは、これを補うために、キープアライブ以外のサイトでの同時接続の数を2倍にします。
これは他の人々の経験と一致していますか?つまり、キープアライブなしで-結果は今ではほとんど目立たないのですか?(WebSocketなどでは、非常に応答性の高いアプリの場合、キープアライブステータスに関係なく接続が「開いた」状態に保たれることに注意してください)。サーバーから離れている人にとって、またはページをロードするときに同じホストからロードするアーティファクトが多数ある場合、その効果は大きくなりますか?(CSS、画像、JSなどはキャッシュフレンドリーなCDNからますます増えていると思います)。
考え?
(これがserverfault.comのものであるかどうかはわかりませんが、誰かがそこに移動するように指示するまで、クロスポストはしません)。
node.js - HAProxy+WebSocketの切断
HAProxyを使用して、サブドメインでnode.jsアプリにリクエストを送信しています。
WebSocketを機能させることができません。これまでのところ、クライアントにWebSocket接続を確立させることしかできませんでしたが、その後すぐに切断が発生します。
私はubuntuにいます。とのさまざまなバージョンを使用していsocket.io
ますnode-websocket-server
。クライアントは、SafariまたはChromeの最新バージョンのいずれかです。HAProxyのバージョンは1.4.8です
これが私のHAProxy.cfgです
Webとメーリングリストをトロールしましたが、提案された解決策を機能させることができません。
(psこれはserverfaultの可能性がありますが、SOには他のHAProxyの質問があるため、ここに投稿することを選択しました)
ruby-on-rails - 分散サービス(HAProxy、Apache、Ruby on Rails)を実行している複数のサーバーを使用する場合のログインを構成する方法
Webサイトを実行しているサーバーが3台あります。ログインシステムを実装する必要がありますが、接続するサーバーに応じてユーザーの動作(ログインまたはログアウト)が異なるため、問題が発生します。
RailsのセッションストアにMemcacheを使用しています-config.action_controller.session_store=:mem_cache_store
ActiveSupport :: Cache :: MemCacheStore.new( "server1"、 "server2"、 "server3")
2行目はキャッシュの同期を維持するか、そのようなものになると思いました...
各サーバーには、1つのマスターと2つのスレーブを持つ独自のデータベースがあります。私はSQLストアでセッションを行うルートを試しましたが、それはSQLサーバーを本当に傷つけ、レプリケーションの負荷は非常に重くなります。
3つのサーバーすべてのすべてのセッションストアにこのMemcacheを使用するという簡単な方法はありますか?
それで私の問題は解決しますか?
本当にありがたいです。
nginx - プライベート IP に関する HAProxy と NGINX の問題
HAProxy のセットアップがあり、アプリ サーバーのパブリック IP を指すのに問題はありませんが、プライベート IP を指すようにすることはできません。「503 Service Unavailable No server is available to handle this request.」というメッセージが表示されます。エラー
これらは私の設定です:
haproxy.cfg
nginx.conf (アプリサーバー用)
linux - HAProxyTCPセッションカウントは400で停止します
TCP負荷分散のためにHAProxyを試しています。接続は単一のIPのポートXに着信し、HAProxyは「leastconn」バランシング方式を使用してこれらの接続をバックエンドにバランシングし、接続数を均等に保ちます。これはUbuntu10.04x64にあります。
カーネル構成のfile-maxを700,000に上げました。プロセスごとの上限を約400,000に上げました。haproxy設定でmaxconnを200,000に上げました。このmaxconnが正常に表示されていることを報告します。
このフロントエンドは、5つのバックエンドシステム間で負荷分散されます。ただし、バックエンドごとに400セッションに達すると、バランスがとれなくなり、追加の接続が延期されます。これは「smax」統計で確認できます。それぞれのセッションの最大数は400であり、セッションの合計最大数は2000であることに注意してください。
この制限はどこから来ていますか?私は本当に何十万もの接続をこのhaproxyインスタンスに詰め込みたいと思っています。(マシンには、追いつくためのネットワーク、CPU、RAMがあります)