博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【第12章】Jetty的工作原理
阅读量:6037 次
发布时间:2019-06-20

本文共 1107 字,大约阅读时间需要 3 分钟。

hot3.png

1.Jetty的基本架构1.1.Server+组件+Connector1.2.当start,fail,stop等事件触发的时候,这些Listener将会被调用1.3.Jetty的基本数据模型是Handler1.3.1.HandlerWrapper:封装Handler,做一些委托和拦截工作1.3.2.HandlerCollection:构成Handler链2.Jetty的启动过程2.1.启动设置到Server的Handler链2.2.启动注册在Server上JMX的Mbean2.3.启动Connector,打开端口,接受客户端请求3.接受请求3.1.基于HTTP,AJP两种协议3.2.当Jetty单独运行的时候,基于HTTP协议3.3.当Jetty集成JBoss的时候,基于AJP(Apache+JBoss+Parser)协议3.4.HTTP(HttpParser)和AJP(Ajp13Parserer)协议唯一的不同点在于解析协议的类3.5.基于HTTP协议,ServerSocket用于建立Socket连接以接受和传送数据,Executor用于处理连接的线程池,acceptorThread用于监听连接请求3.6.Jetty创建连接环境的步骤3.6.1.创建一个队列的线程池,用于处理客户端的请求3.6.2.创建ServerSocket,用于接受客户端的请求3.6.3.创建监听线程,用来监听访问端口是否有连接进来3.7.NIO工作方式的基础下,真正共享一个线程的处理只是在监听不同连接的数据传送事件上,其它均是多线程4.处理请求4.1.Handler链上handler方法的执行过程(HandlerCollection)5.与JBoss集成5.1.JBoss是基于JMX(Java管理扩展)的架构,所以只要符合JMX规范的系统或框架都可以作为一个组件加到JBoss中6.与Tomcat的比较6.1.Jetty是面向Handler的架构,而Tomcat是以多级容器构建起来的6.2.Handler的设计用到了责任链模式(接口类HandlerCollection构建一个链,ScopeHandler帮助控制链的访问顺序)和观察者模式(控制Jetty的生命周期)6.3.若生命周期短的连接,Tomcat的总体性能高;若生命周期长的连接,Jetty的总体性能高6.4.Jetty默认使用NIO技术,Tomcat默认使用BIO技术,在处理静态资源时,Tomcat性能更差
菜鸟交流群:260052172(大神莫入)

 

转载于:https://my.oschina.net/Tsher2015/blog/748975

你可能感兴趣的文章
一次快速的数据迁移感悟
查看>>
MySQL修改提示符
查看>>
《ELK Stack权威指南(第2版)》一3.6 Java日志
查看>>
C++流的streambuf详解及TCP流的实现
查看>>
《量化金融R语言初级教程》一2.5 协方差矩阵中的噪声
查看>>
mysql到elasticsearch数据迁移踩坑实践-Ali0th
查看>>
Python轻量级数据分析库DaPy
查看>>
beetl 和 shrio 结合
查看>>
相对/绝对路径,cd命令,mkdir/rmdir命令,rm命令
查看>>
tomcat中web.xml各配置项的意义
查看>>
Nodejs学习笔记(二):《node.js开发指南》代码中需要注意的几点
查看>>
Ztree异步加载自动展开节点
查看>>
反射操作公共成员变量
查看>>
Android热修复升级探索——代码修复冷启动方案
查看>>
学校宿舍的深夜之思考
查看>>
VB.NET 生成DBF文件
查看>>
编译安装nginx 1.9.15
查看>>
我的友情链接
查看>>
新的开始~~~
查看>>
字符串的扩展
查看>>