深入拆解Tomcat & Jetty - 极客时间课程推荐/优惠

深入拆解Tomcat & Jetty--极客时间课程推荐/优惠

从源码角度深度探索Java中间件
李号双eBay技术主管
专栏 | 45讲 | 39359人已学习
优惠价¥68原价:199
官网优惠购买

版权声明

本站非极客时间官网,与官方无任何关系。我们不提供课程下载或详细内容,仅作为课程分享和推荐平台。我们鼓励大家支持正版,尊重创作者的劳动成果,这样不仅能帮助创作者持续产出优质内容,也能让自己获得更好的学习体验。请通过官方渠道购买和学习课程,感谢您的理解与支持。

课程详情

你将获得

  • 通过Tomcat&Jetty深入理解Java进阶技术;
  • 掌握了Tomcat&Jetty中间件的设计思想;
  • 解读Servlet最新技术及实际应用;
  • 让Web程序飞起来的性能调优策略。

课程介绍

作为一名Java Web开发工程师,不知道你是否有过下面这些经历:

  • 对一些Java技术感觉似懂非懂?
  • 不知道怎么把Java技术用到实际的项目中?
  • 给你一个业务场景,拿不出靠谱的设计方案?
  • Spring框架层面的问题不知道如何定位和修复?
  • 性能调优没思路?

这其中的很多问题其实最终都指向经验不足、设计能力有待提高,没有深刻理解Web的工作原理。而Web容器Tomcat或Jetty,作为重要的系统中间件,连接着浏览器和你的Web应用,并且支撑着Web程序的运行,可以说,弄懂了Tomcat和Jetty的原理,Java Web开发对你来说就毫无秘密可言

那么再换个角度,从一名Java Web开发工程师的成长来看,每个人都会经历:

  • 维护老项目;
  • 实现一个小模块;
  • 独立设计一个子系统;
  • 负责整体的架构方案。

你会发现其中个人的成长可能都会从Tomcat或Jetty开始,逐步积累经验,提高设计能力,最终成长为一名架构师。而且作为初学者,想要找准方向突破深度,Tomcat和Jetty也是非常好的选择。

当然,如果你现在是一名运维或者中间件开发乃至架构师,同样的,每天的工作多少都离不开与Tomcat或Jetty打交道,它总是会在不同场合以不同问题的形式出现在我们面前。

所以不管你是初学、已经在使用或是认为自己已经非常熟悉它们,都有必要重新深入进去,掌握其中的设计精髓,并为自己所用。

在这个专栏里,李号双将会详细剖析Tomcat和Jetty的架构设计和原理,梳理实践中经常遇到的问题,深入分析并提供解决方法;还会带你学习大神们如何“用”Java技术,帮你提升设计思维,解决你Java Web后端开发的“痛点”。

专栏分为6个模块。

模块一,帮你重新理解HTTP协议和Servlet规范,为深入学习Servlet容器Tomcat和Jetty打下基础。

模块二,带你深刻掌握Tomcat和Jetty的整体架构,提炼它们的组件化设计要点,实战优化Tomcat启动速度。

模块三,深入讲解连接器的详细设计和工作原理,和你一起了解Tomcat如何实现非阻塞和异步I/O通信、如何扩展Java原生线程池、如何支持WebSocket;详解Jetty的线程策略EatWhatYouKill;总结Tomcat和Jetty的对象池技术以及高并发高性能之道。

模块四,详细分析容器的设计和工作原理,讨论Tomcat的热加载热部署、类加载机制、Web应用的隔离以及如何实现Servlet规范、如何实现异步Servlet;探讨Jetty如何实现带有上下文信息的责任链;总结Tomcat和Jetty运用的设计模式。

模块五,介绍通用组件的设计和工作原理,包括日志组件、Session管理组件和集群通信组件。

模块六,从实战出发,介绍JVM调优的原理、Tomcat性能监控以及如何对Tomcat进行调优,包括线程池和I/O的并发调优、内存调优和网络调优等。

课程目录

开篇词

  • 开篇词 | Java程序员如何快速成长?

模块一 必备基础

  • 01 | Web容器学习路径
  • 02 | HTTP协议必知必会
  • 03 | 你应该知道的Servlet规范和Servlet容器
  • 04 | 实战:纯手工打造和运行一个Servlet

模块二 整体架构

  • 05 | Tomcat系统架构(上): 连接器是如何设计的?
  • 06 | Tomcat系统架构(下):聊聊多层容器的设计
  • 07 | Tomcat如何实现一键式启停?
  • 08 | Tomcat的“高层们”都负责做什么?
  • 09 | 比较:Jetty架构特点之Connector组件
  • 10 | 比较:Jetty架构特点之Handler组件
  • 11 | 总结:从Tomcat和Jetty中提炼组件化设计规范
  • 12 | 实战:优化并提高Tomcat启动速度
  • 13 | 热点问题答疑(1):如何学习源码?

模块三 连接器

  • 14 | NioEndpoint组件:Tomcat如何实现非阻塞I/O?
  • 15 | Nio2Endpoint组件:Tomcat如何实现异步I/O?
  • 16 | AprEndpoint组件:Tomcat APR提高I/O性能的秘密
  • 17 | Executor组件:Tomcat如何扩展Java线程池?
  • 18 | 新特性:Tomcat如何支持WebSocket?
  • 19 | 比较:Jetty的线程策略EatWhatYouKill
  • 20 | 总结:Tomcat和Jetty中的对象池技术
  • 21 | 总结:Tomcat和Jetty的高性能、高并发之道
  • 22 | 热点问题答疑(2):内核如何阻塞与唤醒进程?

模块四 容器

  • 23 | Host容器:Tomcat如何实现热部署和热加载?
  • 24 | Context容器(上):Tomcat如何打破双亲委托机制?
  • 25 | Context容器(中):Tomcat如何隔离Web应用?
  • 26 | Context容器(下):Tomcat如何实现Servlet规范?
  • 27 | 新特性:Tomcat如何支持异步Servlet?
  • 28 | 新特性:Spring Boot如何使用内嵌式的Tomcat和Jetty?
  • 29 | 比较:Jetty如何实现具有上下文信息的责任链?
  • 30 | 热点问题答疑(3):Spring框架中的设计模式

模块五 通用组件

  • 31 | Logger组件:Tomcat的日志框架及实战
  • 32 | Manager组件:Tomcat的Session管理机制解析
  • 33 | Cluster组件:Tomcat的集群通信原理
  • 特别放送 | 如何持续保持对学习的兴趣?

模块六 性能优化

  • 34 | JVM GC原理及调优的基本思路
  • 35 | 如何监控Tomcat的性能?
  • 36 | Tomcat I/O和线程池的并发调优
  • 37 | Tomcat内存溢出的原因分析及调优
  • 38 | Tomcat拒绝连接原因分析及网络优化
  • 39 | Tomcat进程占用CPU过高怎么办?
  • 40 | 谈谈Jetty性能调优的思路
  • 41 | 热点问题答疑(4): Tomcat和Jetty有哪些不同?

结束语

  • 结束语 | 静下心来,品味经典
  • 结课测试 | 这些Tomcat&Jetty的知识你都掌握了吗?

作者介绍

李号双,eBay技术主管,负责eBay付款系统的可靠性、稳定性和高可用,系统采用定制版的Tomcat运行大规模微服务实例。李号双非常熟悉Tomcat和Jetty的源码,具有丰富的线上问题定位和调优经验,曾在惠普从事企业级分布式系统的开发与架构设计,拥有丰富的容器化上云经验。

推荐

Rust实战 · 手写下一代云原生消息队列 - 极客时间课程推荐/分享/优惠/折扣
Rust实战 · 手写下一代云原生消息队列
项目驱动,带你入门 Rust 系统级编程
许文强前腾讯云 Kafka 技术负责人
专栏 | 1250人已学习
优惠价¥29原价:39
官网优惠购买
互联网人的英语私教课 - 极客时间课程推荐/分享/优惠/折扣
互联网人的英语私教课
让你快速提升英语阅读能力
陈亦峰同传译员,原北外高级翻译学院同声传译讲师
专栏 | 32863人已学习
优惠价¥68原价:199
官网优惠购买
爱上跑步 - 极客时间课程推荐/分享/优惠/折扣
爱上跑步
明星教练带你科学跑步
钱亮比利时RSLab 跑步实验室跑步教练兼培训师,Nike黑马体能教练
专栏 | 8304人已学习
优惠价¥59原价:99
官网优惠购买
成为AI产品经理 - 极客时间课程推荐/分享/优惠/折扣
成为AI产品经理
从 0 构建 AI 产品经理的知识体系
刘海丰京东高级架构师
专栏 | 25362人已学习
优惠价¥59原价:129
官网优惠购买
分布式数据库30讲 - 极客时间课程推荐/分享/优惠/折扣
分布式数据库30讲
从功能特性到运行机制,讲透本质
王磊光大银行首席数据架构师
专栏 | 29843人已学习
优惠价¥59原价:129
官网优惠购买
Redis核心技术与实战 - 极客时间课程推荐/分享/优惠/折扣
Redis核心技术与实战
从原理到实战,彻底吃透 Redis
蒋德钧中科院计算所副研究员
专栏 | 84470人已学习
优惠价¥68原价:199
官网优惠购买