好吧,我已经阅读了一篇关于wiki的小文章,它解释了AJP。 基本上这个协议用于Apache和应用服务器之间的通信。 但为什么一个人需要它呢?为什么不使用纯粹的http?什么是AJP协议用于?
25
A
回答
27
具体而言,并没有真正覆盖在ehow文章,有一些非平凡的开销上的请求解析HTTP头和创造他们回应。如果您正在使用Web代理服务器向您的应用程序服务器前进,AJP允许您跳过额外的解析并仅在代理服务器和应用程序服务器之间传递有效的二进制表示。如果你使用apache/mod_jk到tomcat,还有其他好处,比如简单连接池和紧密集成。
客户< - HTTP/S->代理< - HTTP/S - >应用
VS
客户< - HTTP/S->代理< - AJP - >应用
4
似乎我一直在寻找的答案是性能比较
12
AJP (Apache Jserv Protocol)基本上是binary protocol,它允许将FE Web服务器的代理请求反转到BE应用服务器,有效地传播所有需要的信息以使Req-Res流程成功继续。 通常,AJP用于使用粘滞会话策略进行负载均衡:由于传输的标头数据,FE Web服务器可以在使用特定模块(如mod_jk)的BE对等设备上实现负载平衡。
AJP使用,主要是因为:
- 它比任何HTTP交换更好的性能,
- 它与广泛使用反向代理模块集成(即mod_jk的,mod_proxy的),
- Tomcat的实现提供了丰富的API协议是横向的:HTTP(s)数据被无缝地传播,并且可以通过简单的API调用(规范的getXYX(),非常有效且直接)进行检索,所以它就像使用HTTP以更高的速度工作。
当然,我认为这是一个经过验证的解决方案,拥有近20年的成熟历史:它成功地用于生产环境。
相关问题
- 1. 什么是联邦协议?
- 2. 什么是xmlsocket://协议?
- 3. 什么是USB协议栈?
- 4. 什么是COP3协议?
- 5. 什么是Xdata协议?
- 6. 什么是协议栈?
- 7. 什么是hm://协议?
- 8. 什么是SMPP协议?
- 9. 什么是webcal协议?
- 10. 什么是RCE协议?
- 11. 是基于现有协议的协议还是协议?
- 12. 什么是ExternalAccessory协议使用IOS
- 13. 什么协议XDocument.Load用户
- 14. 为什么基于TCP的HTTP协议?
- 15. 什么是MessagePack /协议缓冲区的传输协议?
- 16. 什么是“网际协议,伪协议号码”?
- 17. Tomcat 7 Websockects通过AJP不起作用。有什么建议么?
- 18. 什么是Apache Thrift和Google协议缓冲区用于?
- 19. kindle用于家庭电话的协议是什么?
- 20. 用于发送电子邮件的协议是什么?
- 21. 使用ajp协议连接到备用备用主机别名
- 22. 什么是Swift中的“标记协议”?
- 23. “XMP over SOAP协议”是什么意思?
- 24. 什么是Python的序列协议?
- 25. 什么是GWT开发插件协议
- 26. 什么是HttpListenerContext.AcceptWebSocketAsync的有效子协议?
- 27. 为什么AMQP是双向RPC协议?
- 28. Swift中的Sink协议是什么?
- 29. 什么是ActiveMQ中的开放协议
- 30. http协议句柄是什么?
还有一个原因#0:'mod_jk'早于Apache JServ(一种长期停产的产品)中的HTTP的使用。历史上,'mod_jk'提供了许多通过'mod_proxy'不可用的功能。目前,这两款产品已基本达到功能平价,因此动力是唯一让AJP保持高用量的产品。 –