112

mod_jk使用 apache 和在 tomcat 实例前使用和mod_proxy使用 apache的优点和缺点是什么?

多年来我一直在生产中使用 mod_jk,但我听说这是面对 tomcat 的“旧方式”。我应该考虑改变吗?会有什么好处吗?

4

3 回答 3

90

这些模块的优缺点比较存在于http://blog.jboss.org/

mod_proxy

* Pros:
      o No need for a separate module compilation and maintenance. mod_proxy,
        mod_proxy_http, mod_proxy_ajp and mod_proxy_balancer comes as part of 
        standard Apache 2.2+ distribution
      o Ability to use http https or AJP protocols, even within the same 
        balancer.
* Cons:
      o mod_proxy_ajp does not support large 8K+ packet sizes.
      o Basic load balancer
      o Does not support Domain model clustering

mod_jk

* Pros:
      o Advanced load balancer
      o Advanced node failure detection
      o Support for large AJP packet sizes
* Cons:
      o Need to build and maintain a separate module
于 2009-07-06T18:27:02.487 回答
29

如果您希望留在 Apache 领域,您还可以尝试更新的mod_proxy_ajp,它使用 AJP 协议而不是普通的旧 HTTP 与 Tomcat 通信,但它利用 mod_proxy 来完成工作。

于 2009-07-04T10:27:27.040 回答
3

AJP 与 HTTP

使用时mod_jk,您正在使用AJP. 使用时mod_proxy您将使用HTTPHTTPS。这就是本质上的不同之处。

Apache JServ 协议 (AJP)

Apache JServ 协议 (AJP) 是一种二进制协议,可以将来自 Web 服务器的入站请求代理到位于 Web 服务器后面的应用程序服务器。AJP 是一种高度受信任的协议,绝不应该暴露给不受信任的客户端,这些客户端可能会使用它来访问敏感信息或在应用程序服务器上执行代码。

优点

  • 易于设置,因为不需要正确转发 HTTP 标头。
  • 它占用的资源较少,因为 TCP 数据包以二进制格式转发,而不是进行昂贵的 HTTP 交换。

缺点

  • 传输的数据未加密。它只能在受信任的网络中使用。

超文本传输​​协议 (HTTP)

HTTP 在客户端-服务器计算模型中用作请求-响应协议。例如,Web 浏览器可以是客户端,而在托管网站的计算机上运行的应用程序可以是服务器。客户端向服务器提交 HTTP 请求消息。服务器代表客户端提供 HTML 文件和其他内容等资源,或执行其他功能,向客户端返回响应消息。响应包含有关请求的完成状态信息,并且还可能在其消息正文中包含请求的内容。

优点

  • 可以使用 SSL/TLS 加密,使其适用于跨不受信任的网络的流量。
  • 它很灵活,因为它允许在转发之前修改请求。例如,设置自定义标题。

缺点

  • 由于必须确保正确转发 HTTP 标头,因此需要更多开销。
  • 由于在转发之前完全解析了请求,因此需要更多的资源。
于 2020-10-25T11:00:14.193 回答