Tomcat原理

什么是Tomcat?

Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,实现JavaWeb程序的装载,是配置JSP(Java Server Page)和JAVA系统必备的一款环境。tomcat 接受http请求,处理筛选目录。

Tomcat各目录的作用

  • bin目录主要是用来存放tomcat的命令。
  • conf目录主要是用来存放tomcat的一些配置文件。
  • lib目录主要用来存放tomcat运行需要加载的jar包。
  • logs目录用来存放tomcat在运行过程中产生的日志文件,非常重要的是在控制台输出的日志。
  • temp目录用户存放tomcat在运行过程中产生的临时文件。
  • webapps目录用来存放应用程序,当tomcat启动时会去加载webapps目录下的应用程序。可以以文件夹、war包、jar包的形式发布应用。
  • work目录用来存放tomcat在运行时的编译后文件,例如JSP编译后的文件。

 

Tomcat在Liunx中运行命令

启动tomcat

找到bin所在的目录 输入sh startup.sh,出现tomcat  started说明tomcat已经启动。

Tomcat原理_第1张图片

 

关闭tomcat

在bin目录下输入sh shutdown.sh

Tomcat原理_第2张图片

tomcat顶层架构: 

  1. Tomcat中只有一个Server,一个Server可以有多个Service,一个Service可以有多个Connector和一个Container;
  2. Service是对外提供服务的;
  3. Container用于封装和管理Servlet,以及具体处理request请求;
  4. Connector用于接受请求并将请求封装成Request和Response来具体处理;

什么是Connector?

Connector组件是Tomcat两个核心组件之一(另一个是Container),主要任务是负责接收客户端发过来的TCP连接请求,创建一个Request和Response对象用于和请求端交换数据。connector包中的Request才是真正Servlet容器中的HttpServletRequest,它里面包含了完成请求需要的host,context和wrapper信息,在这里每一个wrapper其实都对应web.xml配置的一个Servlet。

tomcat启动流程图

Tomcat原理_第3张图片

这是在tomcat文件下,webapps的子目录。一个 webapps代表一个host,docs和root分别代表一个context。

 Tomcat原理_第4张图片

小结: 

作为后端开发人员,在实际的工作中我们会非常高频地使用到web服务器。而tomcat作为web服务器领域中举足轻重的一个web框架,又是不能不学习和了解的。在http中,始终都是客户端发起一个请求,服务器接受到请求之后,然后处理逻辑,处理完成之后再发送响应数据,客户端收到响应数据,然后请求结束。在这个过程中,客户端和服务器都可以对建立的连接进行中断操作。比如可以通过浏览器的停止按钮。这是我的个人总结,个人觉得写的还是不太好,请见谅。

你可能感兴趣的:(Tomcat原理)