我爱编程

Java Web开发之Tomcat

2018-03-03  本文已影响0人  Michaelhbjian

Tomcat服务器是Java开发中最常用的Web服务器。

Tomcat是什么?

Tomcat是由Apache软件基金会下属的Jakarta项目开发的一个Servlet容器,按照Sun Microsystems提供的技术规范,实现了对ServletJavaServer PageJSP)的支持,并提供了作为Web服务器的一些特有功能,如Tomcat管理和控制平台、安全域管理和Tomcat阀等。

由于Tomcat本身也内含了一个HTTP服务器,它也可以被视作一个单独的Web服务器。但是,不能将Tomcat和Apache HTTP服务器混淆,Apache HTTP服务器是一个用C语言实现的HTTPWeb服务器;这两个HTTP web server不是捆绑在一起的。Apache Tomcat包含了一个配置管理工具,也可以通过编辑XML格式的配置文件来进行配置。

Tomcat的系统结构

了解一下Tomcat内部的基本概念:

image

下面是Tomcat内部细节图:

image

Tomcat是一个基于组件形式的Web容器,其中server.xml 配置如下:

image image

Tomcat的启动过程

Tomcat作为一个Java应用,也一定是由面方法启动的。以Tomcat7为例,bin目录下的启动脚本catalina.sh文件中指出了main方法所在的类org.apache.catalina.startup.Bootstrap。探寻Tomcat的启动流程也是从这个方法开始的。参考

image

在输入参数带有”start”时,tomcat会执行启动,主要调用三个方法,分别是

Tomcat处理请求的过程

现在来模拟一个Tomcat处理一个Http请求的过程:

设置一个来自客户端的URL:http://localhost:8080/webgateway/index

参考资料

https://www.jianshu.com/p/7b6ce4b90bae

https://www.ibm.com/developerworks/cn/java/j-lo-tomcat1/index.html

http://kael-aiur.com/tomcat%E6%BA%90%E7%A0%81%E8%A7%A3%E8%AF%BB/tomcat%E7%9A%84%E7%BB%93%E6%9E%84%E5%92%8C%E5%9F%BA%E7%A1%80%E6%A6%82%E5%BF%B5.html

http://www.fanyilun.me/2016/10/10/Tomcat%E7%9A%84%E5%90%AF%E5%8A%A8%E5%88%86%E6%9E%90/

上一篇下一篇

猜你喜欢

热点阅读