之前写过一篇简单使用Jetty的文章,Jetty对于做JAVA Web方面开发的人来说并不陌生,他是一个servlet容器,不过相对Tomcat来说设计的比较简单,而且使用起来也比较简单灵活,我是在学习和使用openfire时接触的Jetty,openfire使用Jetty开发其强大的管理后台。
在我最近的一个项目里我也想用Jetty来开发一个后台管理程序,不过用Jetty来开发后台管理程序的缺点在于集群环境下,对于集群环境下的管理后台最好用Tomcat这样的单独部署起来,方便管理。
先从代码简单地介绍下Jetty的几个核心:
核心类:org.mortbay.jetty.Server
核心接口:org.mortbay.component.LifeCycle
核心线程池封装:org.mortbay.thread.QueuedThreadPool
核心IO处理类:org.mortbay.jetty.nio.SelectChannelConnector
核心Servlet处理类:org.mortbay.jetty.servlet.ServletHandler
根据对源码的Debug跟踪,我画了一个简单的运行原理图,该图说明了Jetty如何HTTP请求:
Jetty运行原理与核心组件解析

本文介绍了Jetty作为servlet容器的简单使用及在JAVA Web开发中的应用,对比了Jetty与Tomcat的区别。重点剖析了Jetty的核心类如Server、LifeCycle、QueuedThreadPool、SelectChannelConnector和ServletHandler,以及基于NIO的IO多路复用模型。通过调试截图和运行原理图,展示了Jetty如何处理HTTP请求,同时提到了HttpParser和HttpGenerator在解析HTTP请求和生成响应数据中的作用。此外,文章还提及了Jetty对HTTPS的支持以及TCP/IP连接的基础知识。
最低0.47元/天 解锁文章
1015

被折叠的 条评论
为什么被折叠?



