文档章节

tomcat7架构简介

加大装益达
 加大装益达
发布于 2017/05/05 23:42
字数 488
阅读 5
收藏 0

原文链接

这里仅仅是对Tomcat7中主要组件进行简单说明,详细的可以查看下tomcat的相关文档。

首先看下网上找来的一张架构图,还有其他的类似的图,可以自行谷歌一下。看图片也大概能了解tomcat整体的组成。

tomcat7架构简介

Server

Server表示整个容器,Tomcat提供了一个默认的Server接口的实现,用户几乎很少自己实现Server接口。

Service

Service是一个中间组件,存活于Server中,绑定一个或者多个Connector到一个Engine上。用户很少自己实现Service接口,默认实现已经足够用。

Engine

表示一个特定Service的请求处理流程。一个Service可能有多个Connector,Engine接受并处理这些来自Connector的所有请求,将响应传回给适当的Connector以传输到客户端。Engine也很少由用户自定义实现。

Host

Host是一个网络名称同Tomcat服务器的关联。Engine可能存在多个Host。

Connector

Connector处理和客户端的通信。Tomcat中有很多可用的Connector。

Context

Context表示一个web应用,一个Host可能包含多个Context,每个Context都有一个唯一的path。

总的架构

Server可以表示是Tomcat,一个Tomcat中只有一个Server,一个Server下面可以有多个Service,每一个Service中包含多个Connector和一个Engine,每个Engine包含多个Host,每个Host包含多个Context。

Engine其实是一个Container,Container是Engine,Host,Context的父接口,这里把Engine称为Container,所以此时可以有如下表示:一个Server下面有多个Service,每个Service包含多个Connector和一个Container。

多个Connector和一个Container组成一个Service,这个Service就可以向外提供服务了。

© 著作权归作者所有

加大装益达
粉丝 31
博文 83
码字总数 138659
作品 0
浦东
高级程序员
私信 提问
付苗/51opencms

youngcms欢迎您的加入 简介 youngcms采用spring mvc ,mybatis,freemaker,mysql等技术开发完成,我们正在采用dubbo,activeMq消息队列,redis等技术进行全新的架构,如果大家感兴趣,可以加入我...

付苗
2017/03/02
0
0
drinkjava2/GoSqlGo

GoSqlGo 简介 | Description 天下武功,唯快不破,程序无非就是接收用户输入、存到数据库。GoSqlGo能让前端直接存取数据库,省掉后端程序员。 缘起 | Origin 一直认为,开发效率最高的方式不...

drinkjava2
2018/12/25
0
0
前端直接存取数据库 - GoSqlGo

简介 | Description 天下武功,唯快不破,程序无非就是接收用户输入、存到数据库。GoSqlGo能让前端直接存取数据库,省掉后端程序员。 缘起 | Origin 一直认为,开发效率最高的方式不是让MVC...

yong9981
2018/12/23
0
0
Docker: 精通ENTRYPOINT指令

ENTRYPOINT简介: docker run命令行中指定的任何参数都会被当做参数再次传递给ENTRYPOINT指令中指定的命令。 一个Dockerfile中只能有一个ENTRYPOINT命令。如果有多条,只有最后一条有效。 无...

CHENYUFENG1991
2017/12/10
0
0
搭建分布式架构2--CentOs下安装Tomcat7(环境准备)

声明:因为运行环境是基于linux系统的,在做此框架之前需要做一些前期的环境准备工作 CentOs下安装Tomcat7网上很多实例,因为博客后期作为框架的原生教程,故这边做详细的安装记录,我这边已...

jeesmlsz
2016/02/14
67
2

没有更多内容

加载失败,请刷新页面

加载更多

IDEA中package不能引入依赖的解决方法

在IDEA中, 使用maven打包。出现了package后没有将需要的依赖放入包中, 运行会抛出java.lang.NoClassDefFoundError的异常。 解决办法 在pom.xml中加入: <build> <plugins> ...

dreamness
10分钟前
0
0
IDEA模板

import com.google.common.collect.Lists;import java.util.List;/** * @author hll * @date 2019/5/26 - 13:12 */public class Demo { // 模板五 // prsf -- > ......

一只小青蛙
27分钟前
0
0
9.jackjson使用教程

1.导入相关jar <!-- 10.jackson --> <!--10.1 定义了底层的streaming API和实现了Json特性 --> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-core</art......

20190513
30分钟前
1
0
如何使用 rsync 备份 Linux 系统的一些介绍

备份一直是 Linux 世界的热门话题。回到 2017,David Both 为 Opensource.com 的读者在使用 rsync 备份 Linux 系统方面提了一些建议,在这年的更早时候,他发起了一项问卷调查询问大家,在 ...

Linux就该这么学
51分钟前
3
0
以太坊私有链搭建

https://blog.csdn.net/Blockchain_lemon/article/details/80589123

Moks角木
今天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部