HAProxy

HAProxy
HAProxy の公式ロゴマーク。
HAProxy の公式ロゴマーク。
作者 Willy Tarreau
初版 2001年12月16日 (2001-12-16)
最新版
ウィキデータを編集
安定版
3.2.0[1] / 2025年5月28日
不安定版
3.3-dev3[2] / 2025年7月11日
/ 2025年5月28日
リポジトリ
プログラミング
言語
C
対応OS Linux, FreeBSD, OpenBSD, Solaris (8/9/10), AIX (5.1–5.3), macOS, Cygwin
対応言語 英語
種別 ロードバランサー、プロキシ
ライセンス GNU General Public License Version 2
公式サイト www.haproxy.org (英語)

HAProxyは、TCPとHTTPベースのアプリケーションのためにリクエストを複数のサーバに分散させる、高可用なロードバランサーおよびプロキシサーバを提供するフリーかつオープンソースなソフトウェアである[3]。C言語で書かれており[4]、CPUとメモリ利用率の点で、高速で効率がよいと評価されている[5]。

HAProxyは、GoDaddy、GitHub、Bitbucket[6]、 Stack Overflow[7]、Reddit、Slack[8]、Speedtest.net、Tumblr、Twitter[9][10]、Tuenti[11] など、多数の著名なウェブサイトで使用されている。また、Amazon Web ServicesのOpsWorks製品で使用されている[12]。

歴史

HAProxyは2000年に、Linuxカーネルのコントリビュータである[13]Willy Tarreau[14]によって書かれた[15]。Tarreauは、現在でもプロジェクトのメンテナンスを続けている。

2013年、ソフトウェアの開発とオープンソースコミュニティからのコントリビューションを継続させるために、HAProxy Technologies, LLCという会社が設立された[16]。この会社は、商用のHAProxy Enterpriseと、ALOHAという名前のアプリケーションベースのApplication delivery controllerを提供している。また、技術サポートとHAProxyの機能を拡張する追加モジュールも提供している。

機能

HAProxyには以下のような機能がある:

  • Layer 4(TCP)およびLayer 7(HTTP)でのロードバランス
  • URLのrewrite
  • レート制限
  • SSL/TLS termination
  • Gzip圧縮
  • Proxy Protocolのサポート
  • ヘルスチェック
  • コネクションとHTTPメッセージのログ
  • HTTP/2[17]
  • マルチスレッド
  • Hitless Reloads[18]
  • gRPCのサポート[19]
  • LuaおよびSPOEのサポート
  • APIのサポート
  • Layer 4でのリトライ
  • 簡易的なサーキットブレーカー

性能

デュアルコアのOpteronまたはXeonプロセッサを搭載したサーバでは、Linux環境では一般に15000から40000ヒット/sを達成でき、2 Gbit/sの接続が問題なく飽和する[20]。

類似のソフトウェア

  • Nginx
  • Hipache
  • Gearman
  • Pound

関連項目

脚注

  1. ↑ “Release 3.2.0” (2025年5月28日). 2025年6月16日閲覧。
  2. ↑ “Release v3.3-dev3” (2025年7月11日). 2025年7月22日閲覧。
  3. ↑ “MySQL Load Balancing with HAProxy”. Severalnines AB (2011年). 2013年2月19日閲覧。
  4. ↑ “HAProxy on Freecode”. 2013年4月5日閲覧。
  5. ↑ “Nuts & Bolts: HAproxy”. 2013年4月8日閲覧。
  6. ↑ “The inner guts of Bitbucket”. 2015年2月26日閲覧。
  7. ↑ “What it takes to run Stack Overflow”. 2013年11月22日閲覧。
  8. ↑ “All Hands on Deck”. 2020年7月7日閲覧。
  9. ↑ “HAProxy: they use it!”. 2013年4月5日閲覧。
  10. ↑ “List of sites using HAProxy”. 2013年6月10日時点のオリジナルよりアーカイブ。2013年4月5日閲覧。
  11. ↑ “Tuenti+WebRTC (Voip2day 2014)”. 2020年10月10日閲覧。
  12. ↑ “HAProxy layer - AWS Opsworks”. 2013年4月5日閲覧。
  13. ↑ “LKML: Willy Tarreau: [ANNOUNCE Linux 2.4.37.11]”. 2013年4月5日閲覧。
  14. ↑ “Willy Tarreau: About me”. 2013年4月5日閲覧。
  15. ↑ “HAProxy: design choices and history”. 2013年4月5日閲覧。
  16. ↑ “HAProxy Technologies overview”. 2018年10月21日閲覧。
  17. ↑ Corbett (2018年12月19日). “HAProxy 1.9 Has Arrived” (英語). HAProxy Technologies. 2019年1月22日閲覧。
  18. ↑ Mhedhbi (2018年5月31日). “Hitless Reloads / Hot Restarts with HAProxy!” (英語). HAProxy Technologies. 2019年1月22日閲覧。
  19. ↑ Ramirez (2019年1月16日). “HAProxy 1.9.2 Adds gRPC Support” (英語). HAProxy Technologies. 2019年1月22日閲覧。
  20. ↑ haproxy.1wt.eu#plat

外部リンク

パフォーマンス