Jetty 的架构比较简单,核心组件主要是由 Server 和 Handler 组成。其中 Server 的 Handler 是其比较重要的一个数据模型,Jetty 中所有的组件都是基于 Handler 来实现的。
Tomcat的基本架构:
Server是Tomcat的最顶层元素,是service的集合,即可包含多个service,Server控制整个Tomcat的生命周期。Service由一个Container和多个Connector组成(或者说由Connector,Engine和线程池[可选]组成),形成一个独立完整的处理单元,对外提供服务。
Jetty与Tomcat的对比:
①Jetty 比较容易贴合第三方框架,比如你可以直接用 Spring 配置一个 Jetty 服务器
②直接可以将 Jetty 作为提供 HTTP 服务的组件,嵌入到应用中
③Jetty 是面向 Handler 的架构,而 Tomcat 是面向容器的架构
④Jetty 默认采用 NIO 技术,而 Tomcat 默认是 BIO
⑤Jetty 高度模块化,可以很灵活的管理拓展组件,而 Tomcat 对其他组件的管理则相对困难