深入拆解Tomcat & Jetty-李号双-极客时间-返现24元

极客时间专栏 2019-05-16 14:32:37 阅读(5382) 评论(0)

极客时间出品的《深入拆解Tomcat & Jetty》由李号双所作,李号双是eBay技术主管,本门课能从源码角度深度探索Java中间件。

《深入拆解Tomcat & Jetty 》宣传图

订阅形式

订阅价:¥99。已有3218人购买,该专栏以音频和文字形式进行, 共42讲 · 每周二 / 四 / 六更新。可在极客时间APP/小程序/网站上观看。

《深入拆解Tomcat & Jetty》宣传图

用我的邀请购买,还会额外返现24元。购买的朋友请加我微信号 dismissmewp ,备注:返现。

专栏简介

作为一名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后端开发的“痛点”。

深入拆解Tomcat & Jetty专栏作者

《深入拆解Tomcat & Jetty 》作者李号双头像

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

专栏模块

专栏分为6个模块,共42讲。

模块一,帮你重新理解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的并发调优、内存调优和网络调优等。

《Python核心技术与实战》专栏详细目录

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

模块一 必备基础

Web容器学习路径

HTTP协议必知必会

你应该知道的Servlet规范和Servlet容器

实战:纯手工打造和运行一个Servlet

模块二 整体架构

Tomcat系统架构(上):连接器是如何设计的?

Tomcat系统架构(下):聊聊多层容器的设计

Tomcat如何实现一键式启停?

Tomcat中的“高层们”都负责做什么?

比较:Jetty的架构特点之Connecto组件

比较:Jetty的架构特点之Handler组件

总结:从Tomcat和Jetty中提炼组件化设计思想

实战:如何优化提高Tomcat启动速度?

热点问题答疑

模块三连接器

NioEndPoint组件:Tomcat如何实现非阻塞I/O ?

Nio2EndPoint组件:Tomcat如何实现异步I/O?

AprEndPoint组件:Tomcat APR提高I/O性能的秘密

Executor组件:Tomcat如何扩展Java线程池?

新特性:Tomcat如何支持WebSocket ?

比较:Jetty的线程策略EatWhatYouKiN

总结:Tomcat和Jetty的对象池技术

总结:Tomcat和Jetty的高性能、高并发之道

热点问题答疑

模块四容器

Host容器:Tomcat如何实现热部署和热加载?

Context容器(上):Tomcat如何打破Java双亲委托机制?

Context容器(中):Tomcat如何隔离Web应用?

Context容器(下):Tomcat如何实现Servlet规范?

新特性:Tomcat如何支持异步Servlet?

新特性:Tomcat和Jetty如何处理Spring Boot应用?

比较:Jetty如何实现具有上下文信息的责任链?

总结:Tomcat和Jetty中用到了哪些设计模式?

热点问题答疑

模块五通用组件

级Logger组件:Tomcat的日志根架及实战

Manager组件:Tomcat的Session管理机制解析

Cluster组件:Tomcat的集群通信原理

模块六性能优化

JVM原理及调优的基本思路

如何监控Tomcat的性能?

Tomcat线程池和I/O的并发调优

Tomcat的内存溢出原因分析及调优

Tomcat拒绝连接原因分析及网络优化

Tomcat进程占用CPU过高怎么办?

谈谈Jetty性能调优的思路

热点问题答疑

 

猿人学banner宣传图

我的公众号:猿人学 Python 上会分享更多心得体会,敬请关注。

***版权申明:若没有特殊说明,文章皆是猿人学 yuanrenxue.con 原创,没有猿人学授权,请勿以任何形式转载。***

说点什么吧...