为什么要让Apache与Tomcat之间进行连接?事实上Tomcat本身已经提供了HTTP服务,该服务默认的端口是8080,也可以改为80。既然Tomcat本身已经可以提供动态加静态web服务,为什么还要引入Apache或者其他的一些专门的HTTP服务器呢?原因是tomcat对静态页面并发处理能力较差,通过与apache链接后可以实现:提升对静态文件的处理性能、实现负载均衡集群、无缝的升级应用程序。

JK

这是最常见的方式,你可以在网上找到很多关于配置JK的网页,当然最全的还是其官方所提供的文档。JK本身有两个版本分别是1和2,而版本2不是最新版,是一个分支,早已经废弃了,以后不再有新版本的推出了,所以建议你采用版本1。

JK是通过AJP协议与Tomcat服务器进行通讯的,Tomcat默认的AJPConnector的端口是8009。JK本身提供了一个监控以及管理的页面jkstatus,通过jkstatus可以监控JK目前的工作状态以及对到tomcat的连接进行设置。

AJP(ApacheJServProtocol)是定向包(面向包)协议。采用二进制形式代替文本形式,以提高性能。WEB服务器通过TCP连接SERVLET容器。WebServer一般维持和WebContainer的多个TCPConnecions,即TCP连接池,多个request/respons循环重用同一个Connection。但是当Connection被分配(Assigned)到某个请求时,该请求完成之前,其他请求不得使用该连接。

http_proxy

这是利用Apache自带的mod_proxy模块使用代理技术来连接Tomcat。在配置之前请确保是否使用的是2.2.x版本的Apache服务器。因为2.2.x版本对这个模块进行了重写,大大的增强了其功能和稳定性。http_proxy模式是基于HTTP协议的代理,因此它要求Tomcat必须提供HTTP服务,也就是说必须启用Tomcat的HTTP Connector。

ajp_proxy

ajp_proxy连接方式也是由mod_proxy模块所提供的功能。连接的是Tomcat的AJP Connector所在的端口。

三者比较

相对于JK的连接方式,http_proxy和ajp_proxy在配置上是比较简单的,灵活性方面也一点都不逊色。但就稳定性而言就不像JK这样久经考验,因此,如果是应用于关键的互联网网站,还是建议采用JK的连接方式。

Apache与Tomcat三种连接方式JK、http_proxy、ajp_proxy的更多相关文章

  1. [转]Apache HTTP Server 与 Tomcat 的三种连接方式介绍

    首先我们先介绍一下为什么要让 Apache 与 Tomcat 之间进行连接.事实上 Tomcat 本身已经提供了 HTTP 服务,该服务默认的端口是 8080,装好 tomcat 后通过 8080 端 ...

  2. linux学习之centos(二):虚拟网络三种连接方式和SecureCRT的使用

    ---操作环境--- 虚拟机版本:VMware Workstation_10.0.3 Linux系统版本:CentOS_6.5(64位) 物理机系统版本:win10  一.虚拟网络三种连接方式 当在V ...

  3. oracle Hash Join及三种连接方式

    在Oracle中,确定连接操作类型是执行计划生成的重要方面.各种连接操作类型代表着不同的连接操作算法,不同的连接操作类型也适应于不同的数据量和数据分布情况. 无论是Nest Loop Join(嵌套循 ...

  4. Linux基石【第二篇】虚拟网络三种连接方式(转载)

    在虚拟机上安装完Centos系统后,开始配置静态IP,以方便在本宿主机上可以访问虚拟机,在曲折的配置中,了解到虚拟机还有三种连接方式:Bridged,NAT和Host-only,于是,我又一轮新的各种 ...

  5. Java连接Oracle数据库的三种连接方式

    背景: 这两天在学习Oracle数据库,这里就总结下自己上课所学的知识,同时记录下来,方便整理当天所学下的知识,也同时方便日后自己查询. SQL语句的话,这里我就不多讲了,感觉和其他的数据库(MySQ ...

  6. mysql的三种连接方式

    SQL的三种连接方式分为:左外连接.右外连接.内连接,专业术语分别为:LEFT JOIN.RIGHT JOING.INNER JOIN 内连接INNER JOIN:使用比较运算符来根据指定的连接的每个 ...

  7. Apache HTTP Server 与 Tomcat 的三种连接方式介绍(转)

    首先我们先介绍一下为什么要让 Apache 与 Tomcat 之间进行连接.事实上 Tomcat 本身已经提供了 HTTP 服务,该服务默认的端口是 8080,装好 tomcat 后通过 8080 端 ...

  8. Apache HTTP Server 与 Tomcat 的三种连接方式介绍

    本文转载自IBM developer 首先我们先介绍一下为什么要让 Apache 与 Tomcat 之间进行连接.事实上 Tomcat 本身已经提供了 HTTP 服务,该服务默认的端口是 8080,装 ...

  9. 转自IBM:Apache HTTP Server 与 Tomcat 的三种连接方式介绍

    http://www.ibm.com/developerworks/cn/opensource/os-lo-apache-tomcat/index.html 整合 Apache Http Server ...

随机推荐

  1. iOS开发常见问题(不断更新)

    1.如何从程序退出到桌面 在单击事件中 exit(0);即可. 2.如何强制横屏 在你需要横屏的控制器里加入如下代码 - (BOOL)shouldAutorotate{ return NO; } - ...

  2. Android记住password后自己主动登录

    /**  *   * @author alex  * @version 2014-7-31下午5:25:45  *  */ public class LoginActivity extends Act ...

  3. SQL.Cookbook 读书笔记3 操作多个表

    第三章 操作多个表 表连接的内连接和外连接 A表 B表id name id name 1 a 1 b 2 b 3 c4 c内连接就是左表和右表相同的数据,查询结果只有相等的数据:select * fr ...

  4. redis string底层数据结构sds

    redis的string没有采用c语言的字符串数组而采用自定义的数据结构SDS(simple dynamic string)设计 len 为字符串的实际长度  在redis中获取字符串的key长度的时 ...

  5. NoSQL-redis with python

    首先,先去看了一下NoSQL的概念: Wiki中参考的NoSQL终极指南(nosql-database.org)中说: NoSQL DEFINITION: Next Generation Databa ...

  6. Permutation Descent Counts(递推)

    1968: Permutation Descent Counts Submit Page   Summary   Time Limit: 1 Sec     Memory Limit: 128 Mb  ...

  7. js特殊字符过滤

    //匹配中文 数字 字母 下划线 var checkInput = function (str) { var pattern =var pattern = /^[\w\u4e00-\u9fa5]+$/ ...

  8. 批量索引以提高索引速度 -d --data-binary

    index create update 第1.2行分别为:信息行.数据行,在索引中增加或更换文档delete 移除文档,只包含信息行 Bulk API | Elasticsearch Referenc ...

  9. 【转】图解MySql命令行创建存储过程

    一 操作实例 首先登录mysql: 使用source命令,从命令行执行sql脚本,创建表: 创建第一个存储过程: 事先用DELIMITER关键字申明当前段分隔符,这样MySQL才会将";&q ...

  10. Can’t connect to local MySQL server through socket 解决办法

    启动mysql 报错: ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/var/lib/mysql/m ...