代老师的博客 https://github.com/daichangya

Servlet工作原理解析

从 Servlet 容器说起 要介绍 Servlet 必须要先把 Servlet 容器说清楚,Servlet 与 Servlet 容器的关系有点像枪和子弹的关系,枪是为子弹而生,而子弹又让枪有了杀伤力。虽然它们是彼此依存的,但是又相互独立发展,这一切都是为了适应工业化生产的结果。从技术角度来说是为了

daicy daicy 发布于 2024-11-11

从Jetty、Tomcat和Mina中提炼NIO构架网络服务器的经典模式

如何正确使用NIO来构架网络服务器一直是最近思考的一个问题,于是乎分析了一下Jetty、Tomcat和Mina有关NIO的源码,发现大伙都基于类似的方式,我感觉这应该算是NIO构架网络服务器的经典模式,并基于这种模式写了个小小网络服务器,压力测试了一下,效果还不错。废话不多说,先看看三者是如何使用NIO的。 Jetty Connector的实现 先看看有关类图:

daicy daicy 发布于 2019-04-17

Tomcat 系统架构与设计模式,第 1 部分: 工作原理

简介: 这个分为两个部分的系列文章将研究 Apache Tomcat 的系统架构以及其运用的很多经典设计模式。本文是第 1 部分,将主要从 Tomcat 如何分发请求、如何处理多用户同时请求,还有它的多级容器是如何协调工作的角度来分析 Tomcat 的工作原理,这也是一个 Web 服务器首要解决的关键问题。

daicy daicy 发布于 2019-04-17

Java Web 高性能开发

Web 发展的速度让许多人叹为观止,层出不穷的组件、技术,只需要合理的组合、恰当的设置,就可以让 Web 程序性能不断飞跃。Web 的思想是通用的,它们也可以运用到 Java Web。这一系列的文章,将从各个角度,包括前端高性能、反向代理、数据库高性能、负载均衡等等,以 Java Web 为背景进行讲述,同时用实际的工具、实际的数据来对比被优化前后的 Java Web 程序。第一部分已经讲解了部分

daicy daicy 发布于 2019-04-17

Tomcat处理HTTP请求源码分析

很多开源应用服务器都是集成tomcat作为web container的,而且对于tomcat的servlet container这部分代码很少改动。这样,这些应用服务器的性能基本上就取决于Tomcat处理HTTP请求的connector模块的性能。本文首先从应用层次分析了tomcat所有的connector种类及用法,接着从架构上分析了connector模块在整个tomcat中所处的位置,最后对c

daicy daicy 发布于 2019-04-17

Jetty 的工作原理以及与 Tomcat 的比较

Jetty 应该是目前最活跃也是很有前景的一个 Servlet 引擎。本文将介绍 Jetty 基本架构与基本的工作原理:您将了解到 Jetty 的基本体系结构;Jetty 的启动过程;Jetty 如何接受和处理用户的请求。你还将了解到 AJP 的一些细节:Jetty 如何基于 AJP 工作;以及 Jetty 如何集成到 Jboss;最后我们将比较一下两个 Servlet 引擎:Tomcat 和 Jetty

daicy daicy 发布于 2019-04-17

Tomcat 系统架构与设计模式

这个分为两个部分的系列文章研究了 Apache Tomcat 服务器的系统架构以及其运用的很多经典设计模式。将分析 Tomcat 中运用的许多经典设计模式,如模版模式、工厂模式和单例模式等。通过学习它们的实践运用能给我们以后的软件设计起到一定的借鉴作用。

daicy daicy 发布于 2019-04-17

Tomcat中Servlet的创建初始化体系结构及工作

一个 Web 应用对应一个 Context 容器,在Tomcat中Context容器就是管理 Servlet的,是Servlet 运行时的 Servlet容器,添加一个 Web 应用时将会创建一个 StandardContext 容器,并且给这个 Context 容器设置必要的参数,url 和path 分别代表这个应用在 Tomcat 中的访问路径和这个应用实际的物理路径。 Web 应用

daicy daicy 发布于 2019-04-17