11 | 总结:从Tomcat和Jetty中提炼组件化设计规范
李号双
该思维导图由 AI 生成,仅供参考
在当今的互联网时代,我们每个人获取信息的机会基本上都是平等的,但是为什么有些人对信息理解得更深,并且有自己独到的见解呢?我认为是因为他们养成了思考和总结的好习惯。当我们学习一门技术的时候,如果可以勤于思考、善于总结,可以帮助我们看到现象背后更本质的东西,让我们在成长之路上更快“脱颖而出”。
我们经常谈敏捷、快速迭代和重构,这些都是为了应对需求的快速变化,也因此我们在开始设计一个系统时就要考虑可扩展性。那究竟该怎样设计才能适应变化呢?或者要设计成什么样后面才能以最小的成本进行重构呢?今天我来总结一些 Tomcat 和 Jetty 组件化的设计思想,或许从中我们可以得到一些启发。
组件化及可配置
Tomcat 和 Jetty 的整体架构都是基于组件的,你可以通过 XML 文件或者代码的方式来配置这些组件,比如我们可以在 server.xml 配置 Tomcat 的连接器以及容器组件。相应的,你也可以在 jetty.xml 文件里组装 Jetty 的 Connector 组件,以及各种 Handler 组件。也就是说,Tomcat 和 Jetty 提供了一堆积木,怎么搭建这些积木由你来决定,你可以根据自己的需要灵活选择组件来搭建你的 Web 容器,并且也可以自定义组件,这样的设计为 Web 容器提供了深度可定制化。
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
- 深入了解
- 翻译
- 解释
- 总结
Tomcat和Jetty是基于组件化设计的Web容器,通过XML文件或代码配置组件,实现深度可定制化。其设计思想包括面向接口编程、责任链模式处理请求、动态创建组件、统一管理组件生命周期等。这种设计规范与Spring框架有相似之处,体现了Web开发中的共通之处。组件的具体实现遵循骨架抽象类和模板模式,这种设计规范在Java集合中也有应用。通过深入理解技术的本质,可以更好地掌握技术背后的精髓。在实际项目中,采用组件化设计可以帮助应对需求变化。文章内容涉及组件化设计的技术特点,对读者快速了解Tomcat和Jetty的设计思想具有指导意义。
仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《深入拆解 Tomcat & Jetty 》,新⼈⾸单¥68
《深入拆解 Tomcat & Jetty 》,新⼈⾸单¥68
立即购买
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
登录 后留言
全部留言(18)
- 最新
- 精选
- 一道阳光这些扩展点被定义成一个个接口,只要你的 Bean 实现了这些接口,Spring 就会负责调用这些接口,老师,spring是怎么判断这些接口被实现了,就调用接口的方法。 还有就是好多扩展原理都是创建一个类去实现接口,然后会自动调用接口的方法,比如springMVC的lan jie (敏感词)器,这个原理是怎么实现的呢?组件是怎么判断这个接口被实现了,就可以被调用?
作者回复: Java里有个isinstanceof.
2019-06-0429 - 往事随风,顺其自然怎么自己编写一个jetty 服务器,像spring boot 内嵌式的
作者回复: https://github.com/jetty-project/embedded-jetty-jsp 这里有例子
2019-06-049 - Demter老师还要开别的专栏吗啊
作者回复: 目前没打算,写专栏真的挺累的😄
2019-08-1436 - breezeQian老师好,最近也在看 tomcat 的源码,对 tomcat 的 StandardService 类中的 executors 字段不太理解,这个东西有什么作用吗?
作者回复: executor是线程池,加了s表示一个service有多个线程池,一个Connector一个。
2019-06-044 - 张德springboot优化的时候 是在bootstrap.yml里面配置上文中的参数吗??李老师
作者回复: 官方文档有介绍 https://docs.spring.io/spring-boot/docs/current/reference/html/howto-embedded-web-servers.html
2019-06-211 - 君哥聊技术spring bean生命周期那张图,右下第二应该是postprocessAfterinitialization吧
作者回复: 是的是的,我更正一下,谢谢指出。
2019-06-041 - 欠债太多关于源代码的阅读,老师有什么好的建议或方法么?
作者回复: 13篇会详细介绍
2019-06-05 - Royal您好,请问该栏目会涉及JAX-RS的内容么?我想请教下关于这块javax.ws.rs.container.AsyncResponse的内容
作者回复: 有相关的部分,异步Servlet。
2019-06-04 - 王超非常赞,这样的总结让人醍醐灌顶,触类旁通!期待后续精彩分享2019-06-0435
- 苏忆老师,您出源码分析的书吧,感觉讲解的是我见过源码分析最好的,把原理设计说的特别好。2019-09-26224
收起评论