深入理解Tomcat 基本架构

The Apache Tomcat® software is an open source implementation of the Java Servlet, JavaServer Pages, Java Expression Language and Java WebSocket technologies. The Java Servlet, JavaServer Pages, Java Expression Language and Java WebSocket specifications are developed under the Java Community Process.

前言

互联网的本质,是数据迁移的过程。

以Java常用框架体系为例。

浏览器请求->Servlet容器->Restful框架->ORM框架->DB。

整个数据流,基本是这个过程。

各阶段常用的框架:

  • Servlet容器
    • tomcat
    • jetty
    • undertow
  • Restful风格框架
    • springboot
    • Jersey
  • ORM
    • hibernate
    • mybatis
    • tk. mybatis
    • mybatis-plus
    • springboot jpa
  • DB
    • mysql

还有一些中间件:rabbitMQ、Redis。

基本原理

Servlet接口和Servlet容器这一整套规范叫作Servlet规范。

Tomcat和Jetty都按照Servlet规范的要求实现了Servlet容器,同时它们也具有HTTP服务器的功能。

Tomcat要实现2个核心功能:

  • 处理Socket连接,负责网络字节流与Request和Response对象的转化。
  • 加载和管理Servlet,以及具体处理Request请求。

Tomcat设计了两个核心组件连接器(Connector)和容器(Container)来分别做这两件事情。连接器负责对外交流,容器负责内部处理。

深入理解Tomcat 基本架构_第1张图片

最顶层是Server,这里的Server指的就是一个Tomcat实例。

一个Server中有一个或者多个Service,一个Service中有多个连接器和一个容器。

连接器与容器之间通过标准的ServletRequest和ServletResponse通信。

你可能感兴趣的:(编程路上,tomcat,架构,java,深入理解Tomcat,Servlet容器,I/O模型,NIO2)