JavaWeb系列读书笔记(七)Jetty工作框架

Jetty基本介绍

Jetty是一个servlet引擎,架构简单,可拓展性强。

Jetty的核心为Server和Connector两个组件,整个Server组件基于Handler容器工作的,类似Tomcat中的Container容器。Connector接收客户端的连接请求,并将请求分配给一个处理队列去执行。

Jetty所有组件的生命周期管理是基于观察者模板设计。

它有一个基本的数据模型,这个模型就是Handler,里面放servlet?所有可以被扩展的组件可以作为一个Handler添加到Server,Jetty会帮你管理这些Handler。

Handler

主要有两种类型,一种为HandlerWrapper,可以将一个Handler交给另外一个类来执行操作。另一种是HandlerCollection,这Handler类可以将多个Handler组装在一起,构成Handler链。

Jetty的启动

Jetty的入口是Server类,Server类启动完成就能调用其他组件的start方法,提供服务。

从另外一个角度来看,就是Server启动设置到Server的Handler,然后这些Handler有各种子Handler,形成一条条Handler链,Server一个个启动,接着会启动注册在Server中JMX上的Mbean等,最后会启动Connector,打开端口,接收客户请求

Jetty的其他特性

Jetty是一个独立的Servlet引擎,可以直接提供web服务,但也可以集成到其他web应用服务器。
倘若作为独立引擎,他就基于http工作,倘若作为架构其中一部分则基于AJP工作

Web服务端架构示意
http请求->Apache/Nginx->AJP协议->Jboss->Tomcat/Jetty->基于servlet的工作

Jetty适合同时处理大量连接并且能长时间保持这些连接,且其架构简单,所以无形之中可以减少服务器本身的内存开销。

你可能感兴趣的:(JavaWeb系列读书笔记(七)Jetty工作框架)