jetty的基本架构

Jetty 的基本架构

Jetty 目前的是一个比较被看好的Servlet 引擎,它的架构比较简单,也是一个可扩展性和非常灵活的应用服务器,它有一个基本数据模型,这个数据模型就是Handler,所有可以被扩展的组件都可以作为一个 Handler,添加到 Server 中,Jetty 就是帮你管理这些 Handler。

Jetty 的基本架构

下图是 Jetty 的基本架构图,整个Jetty 的核心组件由 Server 和 Connector 两个组件构成,整个 Server 组件是基于 Handler 容器工作的,它类似与Tomcat 的 Container 容器,Jetty 与 Tomcat 的比较在后面详细介绍。Jetty 中另外一个比不可少的组件是Connector,它负责接受客户端的连接请求,并将请求分配给一个处理队列去执行。

图 1. Jetty 的基本架构

Jetty中还有一些可有可无的组件,我们可以在它上做扩展。如 JMX,我们可以定义一些 Mbean 把它加到 Server 中,当 Server 启动的时候,这些Bean 就会一起工作。

图 2. Jetty 的主要组件的类图

从上图可以看出整个 Jetty的核心是围绕着 Server 类来构建,Server 类继承了 Handler,关联了 Connector 和 Container。Container 是管理Mbean 的容器。Jetty 的 Server 的扩展主要是实现一个个 Handler 并将 Handler 加到 Server 中,Server中提供了调用这些 Handler
的访问规则。

整个 Jetty的所有组件的生命周期管理是基于观察者模板设计,它和 Tomcat 的管理是类似的。下面是 LifeCycle 的类关系图

每个组件都会持有一个观察者(在这里是 Listener 类,这个类通常对应到观察者模式中常用的 Observer角色,当 start、fail 或stop 等事件触发时,这些 Listener 将会被调用,这是最简单的一种设计方式,相比
Tomcat 的 LifeCycle 要简单的多。

Handler 的体系结构

前面所述 Jetty 主要是基于Handler 来设计的,Handler 的体系结构影响着整个 Jetty 的方方面面。下面总结了一下 Handler 的种类及作用:

图 3. Handler 的体系结构

Jetty 主要提供了两种Handler 类型,一种是 HandlerWrapper,它可以将一个 Handler 委托给另外一个类去执行,如我们要将一个 Handler 加到Jetty 中,那么就必须将这个 Handler 委托给 Server 去调用。配合 ScopeHandler 类我们可以拦截 Handler 的执行,在调用Handler 之前或之后,可以做一些另外的事情,类似于
Tomcat 中的 Valve;另外一个 Handler 类型是HandlerCollection,这个 Handler 类可以将多个 Handler 组装在一起,构成一个 Handler 链,方便我们做扩展。

参考:http://www.ibm.com/developerworks/cn/java/j-lo-jetty/

时间: 2024-10-20 13:27:31

jetty的基本架构的相关文章

Jetty 的基本架构

Jetty的基本架构 jetty的主要组件的类图 整个 Jetty 的核心是围绕着 Server 类来构建,Server 类继承了 Handler,关联了 Connector 和 Container.Container 是管理 Mbean 的容器. Jetty 的 Server 的扩展主要是实现一个个 Handler 并将 Handler 加到 Server 中,Server 中提供了调用这些 Handler 的访问规则. 整个 Jetty 的所有组件的生命周期管理是基于观察者模板设计,它和 T

沉淀再出发:jetty的架构和本质

沉淀再出发:jetty的架构和本质 一.前言 我们在使用Tomcat的时候,总是会想到jetty,这两者的合理选用是和我们项目的类型和大小息息相关的,Tomcat属于比较重量级的容器,通过很多的容器层层包裹提供了非常强大的web功能,但是可以自我定制的余地就非常小了,有的时候我们希望自己设计更多的请求接收,处理和返回的环节,就可以用更加轻量级的jetty了. 二.jetty的架构和原理 2.1.Jetty 的基本架构 Jetty 是一个Servlet 引擎,它的架构比较简单,是一个可扩展性和非常

Jetty安装学习并展示

Jetty 的基本架构 Jetty 目前的是一个比较被看好的 Servlet 引擎,它的架构比较简单,也是一个可扩展性和非常灵活的应用服务器,它有一个基本数据模型,这个数据模型就是 Handler,所有可以被扩展的组件都可以作为一个 Handler,添加到 Server 中,Jetty 就是帮你管理这些 Handler. 下图是 Jetty 的基本架构图,整个 Jetty 的核心组件由 Server 和 Connector 两个组件构成,整个 Server 组件是基于 Handler 容器工作的

Jetty 的工作原理以及与 Tomcat 的比较

Jetty 应该是目前最活跃也是很有前景的一个 Servlet 引擎.本文将介绍 Jetty 基本架构与基本的工作原理:您将了解到 Jetty 的基本体系结构:Jetty 的启动过程:Jetty 如何接受和处理用户的请求.你还将了解到 AJP 的一些细节:Jetty 如何基于 AJP 工作:以及 Jetty 如何集成到 Jboss:最后我们将比较一下两个 Servlet 引擎:Tomcat 和 Jetty 的优缺点. Jetty 的基本架构 Jetty 目前的是一个比较被看好的 Servlet

web容器 - Jetty

详解web容器 - Jetty与Tomcat孰强孰弱 Jetty 基本架构 Jetty目前的是一个比较被看好的 Servlet 引擎,它的架构比较简单,也是一个可扩展性和非常灵活的应用服务器. 它有一个基本数据模型,这个数据模型就是 Handler(处理器),所有可以被扩展的组件都可以作为一个 Handler,添加到 Server 中,Jetty 就是帮你管理这些 Handler. 下图是 Jetty 的基本架构图,整个 Jetty 的核心组件由 Server 和 Connector 两个组件构

2015第31周三Jetty

Jetty 的基本架构 Jetty 目前的是一个比较被看好的 Servlet 引擎,它的架构比较简单,也是一个可扩展性和非常灵活的应用服务器,它有一个基本数据模型,这个数据模型就是 Handler,所有可以被扩展的组件都可以作为一个 Handler,添加到 Server 中,Jetty 就是帮你管理这些 Handler. Jetty 的基本架构 下图是 Jetty 的基本架构图,整个 Jetty 的核心组件由 Server 和 Connector 两个组件构成,整个 Server 组件是基于 H

详解web容器 - Jetty与Tomcat孰强孰弱

本文引用http://www.cnblogs.com/crazyacking/p/5734849.html Jetty 基本架构 体系结构 启动过程 接受请求 基于 HTTP 协议工作 基于 AJP 工作 基于 NIO 方式工作 处理请求 与 Jboss 集成 与 Tomcat 的比较 架构比较 性能比较 特性比较 总结 Jetty 基本架构 Jetty目前的是一个比较被看好的 Servlet 引擎,它的架构比较简单,也是一个可扩展性和非常灵活的应用服务器.它有一个基本数据模型,这个数据模型就是

【Jetty】Jetty 的工作原理以及与 Tomcat 的比较

Jetty 应该是目前最活跃也是很有前景的一个 Servlet 引擎.本文将介绍 Jetty 基本架构与基本的工作原理:您将了解到 Jetty 的基本体系结构:Jetty 的启动过程:Jetty 如何接受和处理用户的请求.你还将了解到 AJP 的一些细节:Jetty 如何基于 AJP 工作:以及 Jetty 如何集成到 Jboss:最后我们将比较一下两个 Servlet 引擎:Tomcat 和 Jetty 的优缺点. Jetty 的基本架构 Jetty 目前的是一个比较被看好的 Servlet

Jetty 的工作原理以及与 Tomcat 的比较:摘自IBM

Jetty 应该是目前最活跃也是很有前景的一个 Servlet 引擎.本文将介绍 Jetty 基本架构与基本的工作原理:您将了解到 Jetty 的基本体系结构:Jetty 的启动过程:Jetty 如何接受和处理用户的请求.你还将了解到 AJP 的一些细节:Jetty 如何基于 AJP 工作:以及 Jetty 如何集成到 Jboss:最后我们将比较一下两个 Servlet 引擎:Tomcat 和 Jetty 的优缺点. 12 评论: 许 令波, Java 工程师, 淘宝网 2011 年 9 月 2