Apache和Tomcat有什么区别_动力节点Java学院整理

Apache 和 Tomcat 都是web网络服务器,两者既有联系又有区别,在进行HTML、PHP、JSP、Perl等开发过程中,需要准确掌握其各自特点,选择最佳的服务器配置。

  Apache是web服务器(静态解析,如HTML),tomcat是java应用服务器(动态解析,如JSP、PHP)

  Tomcat只是一个servlet(jsp也翻译成servlet)容器,可以认为是apache的扩展,但是可以独立于apache运行

  两者从以下几点可以比较的: 

  1、两者都是apache组织开发的

  2、两者都有HTTP服务的功能

  3、两者都是开源免费的

联系

  1)Apache是普通服务器,本身只支持html即普通网页,可以通过插件支持php,还可以与Tomcat连通(Apache单向连接Tomcat,就是说通过Apache可以访问Tomcat资源,反之不然)。  

  2)Apache只支持静态网页,但像asp、jsp、php、cgi等动态网页就需要Tomcat来处理。

  3)Apache和Tomcat整合使用:

    如果客户端请求的是静态页面,则只需要Apache服务器响应请求;

    如果客户端请求动态页面,则是Tomcat服务器响应请求,将解析的JSP等网页代码解析后回传给Apache服务器,再经Apache返回给浏览器端。

    这是因为jsp是服务器端解释代码的,Tomcat只做动态代码解析,Apache回传解析好的静态代码,Apache+Tomcat这样整合就可以减少Tomcat的服务开销。

  4)Apache和Tomcat是独立的,在同一台服务器上可以集成。

区别

  Apache是有C语言实现的,支持各种特性和模块从而来扩展核心功能;Tomcat是Java编写的,更好的支持Servlet和JSP。

  1、Apache是Web服务器,Web服务器传送(serves)页面使浏览器可以浏览,Web服务器专门处理HTTP请求(request),但是应用程序服务器是通过很多协议来为应用程序提供 (serves)商业逻辑(business logic)。

  Tomcat是运行在Apache上的应用服务器,应用程序服务器提供的是客户端应用程序可以调用(call)的方法 (methods)。它只是一个servlet(jsp也翻译成servlet)容器,可以认为是Apache的扩展,但是可以独立于apache运行。

  2、Apache是普通服务器,本身只支持html静态普通网页。不过可以通过插件支持PHP,还可以与Tomcat连通(单向Apache连接Tomcat,就是说通过Apache可以访问Tomcat资源,反之不然),Tomcat是jsp/servlet容器,同时也支持HTML、JSP、ASP、PHP、CGI等,其中CGI需要一些手动调试,不过很容易的。

  3、Apache侧重于http server,Tomcat侧重于servlet引擎,如果以standalone方式运行,功能上Tomcat与apache等效支持JSP,但对静态网页不太理想。

  4、Apache可以运行一年不重启,稳定性非常好,而Tomcat则不见得。

  5、首选web服务器是Apache,但Apache解析不了的jsp、servlet才用tomcat。

  6、Apache是很最开始的页面解析服务,tomcat是后研发出来的,从本质上来说tomcat的功能完全可以替代Apache,但Apache毕竟是tomcat的前辈级人物,并且市场上也有不少人还在用Apache,所以Apache还会继续存在,不会被取代,apache不能解析java的东西,但解析html速度快。

两者例子:

  Apache是一辆车,上面可以装一些东西如html等,但是不能装水,要装水必须要有容器(桶),而这个桶也可以不放在卡车上,那这个桶就是TOMCAT。

两者整合:

  Apache是一个web服务器环境程序,启用他可以作为web服务器使用不过只支持静态网页,不支持动态网页,如asp、jsp、php、cgi

  如果要在Apache环境下运行jsp就需要一个解释器来执行jsp网页,而这个jsp解释器就是Tomcat

  那为什么还要JDK呢?因为jsp需要连接数据库的话就要jdk来提供连接数据库的驱程,所以要运行jsp的web服务器平台就需要APACHE+TOMCAT+JDK

整合的好处:

  如果客户端请求的是静态页面,则只需要Apache服务器响应请求

  如果客户端请求动态页面,则是Tomcat服务器响应请求

  因为jsp是服务器端解释代码的,这样整合就可以减少Tomcat的服务开销

总结

以上所述是小编给大家介绍的Apache和Tomcat有什么区别,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!

(0)

相关推荐

  • tomcat 5.0 + apache 2.0 完全安装步骤详解

    安装JDK:下载: j2sdk-1_4_1_02-linux-i586.bin把jdk 安装在/usr/local/j2sdk1.4.1_02在/usr/local 下建立 软连接 jdk#ln -s /usr/local/j2sdk1.4.1_02 /usr/local/jdk[user@host]# cat /etc/profile.d/java.sh# set java environmentexport JAVA_HOME=/usr/local/jdkexport PATH=$PATH:

  • Apache2.2以上版本与Tomcat整合配置及负载均衡实现

    今天技术总监叫实现Apache和Tomacat整合,在网上找了很多资料,结果发现还是这个最方便! 下面是实现2个tomcat实现负载均衡,如果只有一个则可删除一个 apache2.2以上版本,无需使用jk_mod来集成tomcat,直接使用ajp,很方便. 修改apache配置文件httpd.conf 启用mod_proxy_ajp 复制代码 代码如下: #LoadModule proxy_module modules/mod_proxy.so #LoadModule proxy_ajp_mod

  • redhat下apache+php+mysql+imap+ldap+jdk+tomcat的安装

    以上软件可以在此用FTP下载: address:202.104.157.58 name:hello password:hello 一.下面以/home/hailang/ 目录为例: tar zxvf apache_1.3.19.tar.gz tar zxvf imap-2000c.tar.Z tar zxvf mod_jserv.so..so tar zxvf mysql-3.23.33-pc-linux-gnu-i6862.tar.gz tar zxvf openldap-2.0.7.tar.

  • apache tomcat 一个网站多域名的实现方法

    windows下 C:\WINDOWS\system32\drivers\etc 文件夹内 hosts 里加上 127.0.0.1 www.domain.com 127.0.0.1 bbs.domain.com 127.0.0.1 www.domain.com 127.0.0.1 bbs.domain.com 127.0.0.1 www.domain.com 127.0.0.1 bbs.domain.com 其中 www.domain.com 与 bbs.domain.com 共享同一个网站,目

  • Jsp和PHP共用80端口整合Apache和Tomcat(访问时无需加端口号)

    目的: 整合Apache和Tomcat,使得Java工程和PHP工程都能共用80端口,访问网站时,无需在地址栏中加端口号. 环境说明: Linux CentOS 32位 Apache 2.2.2 Tomcat 7.0.37 准备工作: 下载mod_jk.so http://archive.apache.org/dist/tomcat/tomcat-connectors/jk/binaries/ 打开链接找到合适的文件下载,下载后改名为mod_jk.so 修改Apache相关文件 1.将mod_j

  • Apache和Tomcat服务器间的区别、联系、整合详细介绍

    Apache 和 Tomcat 都是web网络服务器,两者既有联系又有区别,在进行HTML.PHP.JSP.Perl等开发过程中,需要准确掌握其各自特点,选择最佳的服务器配置. Apache是web服务器(静态解析,如HTML),tomcat是java应用服务器(动态解析,如JSP.PHP) Tomcat只是一个servlet(jsp也翻译成servlet)容器,可以认为是apache的扩展,但是可以独立于apache运行 两者从以下几点可以比较的: 1.两者都是apache组织开发的 2.两者

  • Apache与Tomcat服务器整合的基本配置方法及概要说明

    首先,当然是安装Apache HTTP Server,并准备mod_jk.so文件,这些都可以在http://apache.org中找到,要注意的是,mod_jk.so的版本要和Apache HTTP Server的版本对应,如果没有对应的就要自己重新编译Apache,但是一般没必要,肯定会有对应版本. 开始: 1.安装Apache HTTP Server,Server Name 和 Domain Name 均为127.0.0.1 2.将mod_jk.so复制到Apache安装目录的module

  • Apache和Tomcat有什么区别_动力节点Java学院整理

    Apache 和 Tomcat 都是web网络服务器,两者既有联系又有区别,在进行HTML.PHP.JSP.Perl等开发过程中,需要准确掌握其各自特点,选择最佳的服务器配置. Apache是web服务器(静态解析,如HTML),tomcat是java应用服务器(动态解析,如JSP.PHP) Tomcat只是一个servlet(jsp也翻译成servlet)容器,可以认为是apache的扩展,但是可以独立于apache运行 两者从以下几点可以比较的:  1.两者都是apache组织开发的 2.两

  • Java中HashSet和HashMap的区别_动力节点Java学院整理

    什么是HashSet? HashSet实现了Set接口,它不允许集合中有重复的值,当我们提到HashSet时,第一件事情就是在将对象存储在HashSet之前,要先确保对象重写equals()和hashCode()方法,这样才能比较对象的值是否相等,以确保set中没有储存相等的对象.如果我们没有重写这两个方法,将会使用这个方法的默认实现.. public boolean add(Object o)方法用来在Set中添加元素,当元素值重复时则会立即返回false,如果成功添加的话会返回true. 什

  • Java中抽象类和接口的区别_动力节点Java学院整理

    接口 1 因为java不支持多重继承,所以有了接口,一个类只能继承一个父类,但可以实现多个接口,接口本身也可以继承多个接口. 2 接口里面的成员变量默认都是public static final类型的.必须被显示的初始化. 3 接口里面的方法默认都是public abstract类型的.隐式声明. 4 接口没有构造方法,不能被实例化. 5 接口不能实现另一个接口,但可以继承多个接口. 6 类如果实现了一个接口,那么必须实现接口里面的所有抽象方法,否则类要被定义为抽象类. 抽象类 1 如果将一个类

  • Java中List Set和Map之间的区别_动力节点Java学院整理

    Java集合的主要分为三种类型: • Set(集) • List(列表) • Map(映射) 要深入理解集合首先要了解下我们熟悉的数组: 数组是大小固定的,并且同一个数组只能存放类型一样的数据(基本类型/引用类型),而JAVA集合可以存储和操作数目不固定的一组数据. 所有的JAVA集合都位于 java.util包中! JAVA集合只能存放引用类型的的数据,不能存放基本数据类型. 世间上本来没有集合,(只有数组参考C语言)但有人想要,所以有了集合 有人想有可以自动扩展的数组,所以有了List 有的

  • Java Thread中start()和run()的区别_动力节点Java学院整理

    start() 和 run()的区别说明 start() : 它的作用是启动一个新线程,新线程会执行相应的run()方法.start()不能被重复调用. run()   : run()就和普通的成员方法一样,可以被重复调用.单独调用run()的话,会在当前线程中执行run(),而并不会启动新线程! 下面以代码来进行说明. class MyThread extends Thread{ public void run(){ ... } }; MyThread mythread = new MyThr

  • Java中final,finally,finalize三个关键字的区别_动力节点Java学院整理

    final 当这个关键字修饰一个类时,意味着他不能派生出新的子类,也就是说不能被继承,因此一个类不能被同时声明为abstract和final.当final修饰变量或者方法时,可以保证他们在使用中不会被改变.被声明为final的变量必须在初始化时给定初值,以后在使用时只能被引用而不能被修改.同样,当final修饰一个方法时,这个方法不能被重载. finally 异常处理时提供finally来执行任何清楚操作.如果抛出一个异常,那么相匹配的catch子句就会被执行,然后控制就会转入finally块.

  • Java中HashTable和HashMap的区别_动力节点Java学院整理

    HashMap和Hashtable都实现了Map接口,但决定用哪一个之前先要弄清楚它们之间的区别.主要的区别有:线程安全性,同步(synchronization),以及速度. HashMap几乎可以等价于Hashtable,除了HashMap是非synchronized的,并可以接受null(HashMap allows one null key and any number of null values.,而Hashtable则不行).这就是说,HashMap中如果在表中没有发现搜索键,或者如

  • Java中List  Set和Map之间的区别_动力节点Java学院整理

    Java集合的主要分为三种类型: • Set(集) • List(列表) • Map(映射) 要深入理解集合首先要了解下我们熟悉的数组: 数组是大小固定的,并且同一个数组只能存放类型一样的数据(基本类型/引用类型),而JAVA集合可以存储和操作数目不固定的一组数据. 所有的JAVA集合都位于 java.util包中! JAVA集合只能存放引用类型的的数据,不能存放基本数据类型. 世间上本来没有集合,(只有数组参考C语言)但有人想要,所以有了集合 有人想有可以自动扩展的数组,所以有了List 有的

  • tomcat目录结构简介_动力节点Java学院整理

    tomcat目录结构简介 如果我们有一个web应用,名称为"mail"(同时也是web应用所在目录的名称),那么其目录内不同类型的文件应该服从如下放置的规则: 一般来讲: 对于html.jsp.css.js文件等,可以直接放置在web应用所在目录中,当然如果某些文件比较多,可以另外创建一些目录来存放. 而对于除了上述几种文件外,一些不希望被外界能访问到的文件必须放在[WEB-INF]目录中,文件名不许更改,纯大写,一点不能有区别,否则必定出错,而在这个目录下会存放一些我们开发所需的Ja

  • bs架构和cs架构的区别_动力节点Java学院整理

    1.CS.BS架构定义 CS(Client/Server):客户端----服务器结构.C/S结构在技术上很成熟,它的主要特点是交互性强.具有安全的存取模式.网络通信量低.响应速度快.利于处理大量数据.因为客户端要负责绝大多数的业务逻辑和UI展示,又称为胖客户端.它充分利用两端硬件,将任务分配到Client 和Server两端,降低了系统的通讯开销.C/S结构的软件需要针对不同的操作系统系统开发不同版本的软件,加之产品的更新换代十分快,已经很难适应百台电脑以上局域网用户同时使用. C/S 架构是一

随机推荐