使用 haproxy 和 mod_jk 对 JBoss 进行负载平衡

使用 haproxy 和 mod_jk 对 JBoss 进行负载平衡

我的任务是探索如何建立一个非常为 JBoss 开发的专业应用程序的防故障配置。

我有一个相对固定的硬件配置(服务器已经选定,它们旨在每秒处理数千个连接)和软件方面的更多自由。

我最初打算使用虚拟专用网络备份组,使用专用的 L3 交换机或通过保持活跃, 和哈普罗西在故障转移、负载平衡配置中提供对 Apache 的访问。

(参考:

这是我第一次需要部署 JBoss,因此在做作业时我读到 mod_jk 本质上有一个负载均衡器,可以在一个 apache 实例和多个 JBoss 实例之间工作。

我的问题是:如果我同时使用 HAProxy 配置 http 负载平衡和使用 mod_jk 配置 AJP/JBoss 负载平衡,我会得到什么好处吗?它会以某种方式破坏负载平衡甚至应用服务器的功能吗?

以下是预期配置的图表:

JBoss+HAProxy 负载平衡

我们仍处于设计阶段,因此没有更多详细信息。如果需要,我可以提供它们,但我相信这是一个关于部署 JBoss + Apache 时不同负载平衡机制的运作的一般问题。

我还没有考虑数据库,这是我们下一步要解决的问题。

答案1

我的问题是:如果我同时使用 HAProxy 配置了 http 负载平衡以及使用 mod_jk 配置了 AJP/JBoss 负载平衡,我会得到任何好处吗?

我会使用 HAProxy 或mod_jk,而不是两者。我看不出使用多层负载均衡器有什么好处。

另一种选择是使用mod_cluster。 试一试。

答案2

我不认为使用多层负载均衡器有任何好处。

Ajp 是比 http 快得多的二进制协议,因此如果您在 tcp 模式(比 http 快)中在 Apache 前面使用 Haproxy,然后在 Apache 和 Jboss 之间使用 mod_jk,您会注意到一些提升。与 Haproxy http 模式和 Jboss 相比。

相关内容