【问题标题】:Java Load Balancing OptionsJava 负载平衡选项
【发布时间】:2012-02-07 08:09:56
【问题描述】:

我不想重新发明轮子,而是想为我的 Java 后端使用一个开源负载平衡器。我将使用 GlassFish 作为应用服务器(运行 EAR),并且每个应用服务器很可能在 Ubuntu Server VM 上运行。

所以负载均衡器可能(尽管我对其他想法持开放态度!)是它自己的运行某种开源负载均衡软件的 Ubuntu Server VM。至于这是什么(请注意图中的大“?”!)我真的不在乎,只要它:

  • 超级快
  • 安全
  • 与 GlassFish 完美搭配
  • 是免费和开源的,并附带不限制我将此系统作为产品或服务出售的许可证
  • 相对易于配置(但我不怕弄脏我的手)

只是想知道我的(最佳)选择是什么。到目前为止,我已经发现了:

  • 阿帕奇HTTPd
  • haproxy
  • nginx

但没有什么能让我失望,因为它是满足我要求的最终一切显而易见的解决方案。提前感谢您在正确方向上的任何建议或推动!

【问题讨论】:

  • 你在平衡什么……http请求、会话bean等等……
  • HTTP 和 HTTPS,至于 bean,我有一个完全不同的解决方案。只是寻找合适的软件/硬件技术来平衡传入(外部)HTTP/S 请求

标签: apache glassfish load-balancing


【解决方案1】:

我过去曾使用Python Director 并取得了巨大成功。这并不是真正的 Java 问题,任何 SLB(软件负载均衡器)都可以完成负载均衡和代理 HTTP 的工作。

我们实际上将 ZeroConf / Bonjour 入侵到我们的 Python Director 版本中,这样负载均衡器就会自动发现何时从网络中自动添加或删除内容。 它在生产环境中运行了几年,没有出现任何问题,我们从未接触过它。

【讨论】:

    【解决方案2】:

    GlassFish Server 开源版支持 AJP(mod_jk、mod_proxy,请参阅 all-in-one docs bundle 中的管理指南)。 Oracle GlassFish Server 附带一个可与 Apache httpd、IIS 和 Oracle iPlanet Web Server 配合使用的插件。

    希望这会有所帮助。

    【讨论】:

    • 谢谢约翰!所以有可能拥有一个运行 Apache/AJP 的“负载平衡器”服务器,然后让它与位于它后面的每个不同的应用服务器一起工作?
    • 仅供参考:关于 GlassFish 网络拓扑和负载平衡:blogs.oracle.com/theaquarium/entry/…
    【解决方案3】:

    以下是关于开箱即用和常用功能的完整概述。 http://blog.eisele.net/2012/01/throwing-light-on-glassfish-webserver.html 在商业场景中,我看到了很多 BigIP 产品的使用。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-09-21
      • 2022-01-10
      • 1970-01-01
      • 2014-07-15
      • 2012-09-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多