HAProxy HTTP vs TCP


17

HAProxyには、モードをTCPまたはHTTPに設定するオプションがあります。また、ポートを設定することもできます。

では、ポートを選択できるのであれば、なぜHTTPとTCPを選択できるのでしょうか?確かにHTTPが必要な場合、TCPとポート80を選択できますか?

なぜTCPとHTTPだけなのですか?HTTPはTCPではないことを暗示しているようです。なぜTCP、HTTP、SNMP、FTPなど、などを持っていないのですか。

なぜHTTPとTCPだけなのか?HTTPがTCPの場合、なぜこれらのオプションのいずれかがありますか?それは非常に紛らわしいと思うし、非http(s)サービスの負荷分散に関する情報を見つけることは本当に難しい。

回答:


28

HAProxy構成でHTTPメソッドを使用すると、いくつかのHTTP固有のオプションにアクセスできます。たとえば、HTTPリクエストのURLに基​​づいて異なるバックエンドを選択できます。TCPモードを指定すると、HAProxyはパケット内のHTTPヘッダーを評価しません。

したがって、HTTPトラフィックにTCPを使用することは間違いなくできますが、追加のHTTPオプションはありません。補足説明として、SSL機能を使用していない限り、HTTPSトラフィックにはTCPを使用する必要があります。これは、パケットが暗号化され、HAProxyがHTTPヘッダーを表示できないためです。


ありがとう。それは本当に私にとってすべての意味を理解するのに役立ちました。乾杯。
マーフラー14

6

誰かがこれに関するブログ投稿を書いた:http : //www.linickx.com/645/load-balance-anything-with-haproxy

とにかく、なぜhaproxyを維持している人々が選択した構文を使用するのかわかりません。誤解を招くものであると思うほど好きではありません(私の脳で何かがHTTP または TCPのねじであると言って) HAProxyで何でもロードバランシングできます。HTTPでない場合は、TCPと正しいポート番号を使用します。


HTTPはトランスポート層でのTCPであるため、アプリケーション全体はHTTPに特化した単​​なるTCPです。良いリンク、ところで。
シグナス
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.