HTTP协议与AJP协议

AJP 全称 Apache JServ Protocol, 是定向包协议,因为性能的原因,使用二进制格式来传输可读性文本,WEB服务器通过TCP连接和SERVLET容器连接。


一旦WEB服务器打开了一个到SERVLET容器的连接,连接处于下面的状态: 
◆ 空闲 
这个连接上没有处理的请求。 
◆ 已分派 
连接正在处理特定的请求。一旦一个连接被分配给一个特定的请求,在连接上发送的基本请求信息是高度压缩的。在这点,SERVLET容器大概准备开始处理请求,当它处理的时候,它能发回下面的信息给WEB服务器。 
◆ SEND_HEADERS 
发送一组头到浏览器。 
◆ SEND_BODY_CHUNK 
发送一块主体数据到浏览器。 
◆ GET_BODY_CHUNK 
从请求获得下一个数据如果还没有全部传输完,如果请求内容的包长度非常大或者长度不确定,这是非常必要的。例如上载文件。注意这和HTTP的块传输没有关联。 
◆ END_RESPONSE 
结束请求处理循环。

Tomcat服务器通过Connector连接器组件与客户程序建立连接,Connector组件负责接收客户的请求,以及把Tomcat服务器的响应结果发送给客户。默认情况下,Tomcat在server.xml中配置了两种连接器。

<!-- Define a non-SSL Coyote HTTP/1.1
  Connector on port 8080 -->
  <Connector port="8080"
  maxThreads="150"
  minSpareThreads="25"
  maxSpareThreads="75"
  enableLookups="false"
  redirectPort="8443"
  acceptCount="100"   debug="0"
  connectionTimeout="20000"
  disableUploadTimeout="true" />
  
  <!-- Define a Coyote/JK2 AJP 1.3
  Connector on port 8009 -->
  <Connector port="8009"
  enableLookups="false"
  redirectPort="8443" debug="0"
  protocol="AJP/1.3" />
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  1. 第一个连接器监听8080端口,负责建立HTTP连接。在通过浏览器访问Tomcat服务器的Web应用时,使用的就是这个连接器。  

  2. 第二个连接器监听8009端口,负责和其他的HTTP服务器建立连接。在把Tomcat与其他HTTP服务器集成时,就需要用到这个连接器。

  3. Web客户访问Tomcat服务器上JSP组件的两种方式如图22-1所示。

 
            图22-1 Web客户访问Tomcat服务器上的JSP组件的两种方式 

在图22-1中,Web客户1直接访问Tomcat服务器上的JSP组件,他访问的 URL为http://localhost:8080 /index.jsp。Web客户2通过HTTP服务器访问Tomcat服务器上的JSP组件。假定HTTP服务器使用的HTTP端口为默认的80端口, 那么Web客户2访问的URL为http://localhost:80/index.jsp 或者 http://localhost/index.jsp



  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Apache HTTP Server Version 2.2 文档 目录: 地址和端口的绑定(Binding) 缓冲指南 配置文件 内容协商 自定义错误响应 动态共享对象(DSO)支持 Apache的环境变量 过滤器(Filter) 词汇表 Apache处理器的使用 Apache HTTP Server Version 2.2 文档 编译与安装 启动Apache Apache许可证 2.0 版 日志文件 多路处理模块(MPM) Apache2.0新特性概述 Apache 2.2 新特性概述 配置段(容器) 服务器全局配置 站点导航 停止和重启 suEXEC支持 致谢与译者声明 从2.0升级到2.2 从1.3升级到2.0 从URL到文件系统的映射 Apache 1.3 API 备忘录 APR中内存分配的调试 Apache 2.0 文档制作 Apache 2.0 过滤器工作原理 Apache 2.0 中的Hook函数 Apache 2.0 开发者文档 将模块从Apache1.3转化到Apache2.0 Apache 2.0 对请求的处理 Apache 2.0 线程安全问题 经常问到的问题 认证、授权、访问控制 CGI动态页面 .htaccess文件 如何.../指南 用户网站目录 服务器端包含入门 关于DNS和Apache 杂项文档 性能方面的提示 与Apache相关的标准 安全方面的提示 beos(MPM) Apache核心(Core)特性 描述指令的术语 指令索引 event(MPM) 模块索引 描述模块的术语 mod_actions mod_alias mod_asis mod_authnz_ldap mod_authn_alias mod_authn_anon mod_authn_dbd mod_authn_dbm mod_authn_default mod_authn_file mod_authz_dbm mod_authz_default mod_authz_groupfile mod_authz_host mod_authz_owner mod_authz_user mod_auth_basic mod_auth_digest mod_autoindex mod_cache mod_cern_meta mod_cgi mod_cgid mod_charset_lite mod_dav mod_dav_fs mod_dav_lock mod_dbd mod_deflate mod_dir mod_disk_cache mod_dumpio mod_echo mod_env mod_example mod_expires mod_ext_filter mod_file_cache mod_filter mod_headers mod_ident mod_imagemap mod_include mod_info mod_isapi mod_ldap mod_logio mod_log_config mod_log_forensic mod_mem_cache mod_mime mod_mime_magic mod_negotiation mod_nw_ssl mod_proxy mod_proxy_ajp mod_proxy_balancer mod_proxy_connect mod_proxy_ftp mod_proxy_http mod_rewrite mod_setenvif mod_so mod_speling mod_ssl mod_status mod_suexec mod_unique_id mod_userdir mod_usertrack mod_version mod_vhost_alias mpmt_os2(MPM) Apache MPM 公共指令 mpm_netware(MPM) winnt(MPM) prefork(MPM) 指令速查 worker(MPM) The Apache EBCDIC Port 针对特定平台的说明 Using Apache With Novell NetWare Running a High-Performance Web Server on HPUX 在Microsoft Windows中使用Apache 在Microsoft Windows上编译Apache ab - Apache HTTP服务器性能测试工具 apachectl - Apache HTTP服务器控制接口 apxs - Apache 扩展工具 configure - 配置源代码树 dbmmanage - 管理DBM格式的用户认证文件 htcacheclean - 清理磁盘缓冲区 htdbm -

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值