Tomcat 調優之從 Linux 內核源碼層面看 Tcp backlog

  • 2022 年 10 月 19 日
  • 筆記

前两天看到一群里在讨论 Tomcat 参数调优,看到不止一个人说通过 accept-count 来配置线程池大小,我笑了笑,看来其实很多人并不太了解我们用的最多的 WebServer Tomcat,这篇文章就来聊下 Tomcat 调优,重点介绍下 线程池调优及 TCP 半连接、全连接队列调优 。 T …

Continue Reading

Spring mvc源碼分析系列--Servlet的前世今生

  • 2022 年 9 月 28 日
  • 筆記

Spring mvc源码分析系列--Servlet的前世今生 概述 上一篇文章 Spring mvc源码分析系列--前言 挖了坑,但是由于最近需求繁忙,一直没有时间填坑。今天暂且来填一个小坑,这篇文章我们来说说Servlet的发展历史。所以这篇文章还是比较轻松,不涉及太多的源码分析,简单介绍Serv …

Continue Reading

【面試必備】我跟面試官聊了一個小時執行緒池!

  • 2022 年 8 月 29 日
  • 筆記

大家好,这篇文章主要跟大家聊下 Java 线程池面试中可能会问到的一些问题。 全程干货,耐心看完,你能轻松应对各种线程池面试。 相信各位 Javaer 在面试中或多或少肯定被问到过线程池相关问题吧,线程池是一个相对比较复杂的体系,基于此可以问出各种各样、五花八门的问题。 若你很熟悉线程池,如果可以, …

Continue Reading

web監聽器解析

  • 2022 年 8 月 24 日
  • 筆記

监听器是web三大组件之一,事件监听机制如下: 事件:某个事件,如果初始化上下文 事件源:事件发生的地方 监听器:一个对象,拥有需要执行的逻辑 注册监听:将事件、事件源、监听器绑定在一起。当事件源发生某个事件后,将事件传递给监听器,监听器执行相应代码逻辑 添加监听器 在web项目中的web.xml配 …

Continue Reading

Spring mvc源碼分析系列--前言

  • 2022 年 8 月 22 日
  • 筆記

Spring mvc源码分析系列--前言 前言 距离上次写文章已经过去接近两个月了,Spring mvc系列其实一直都想写,但是却不知道如何下笔,原因有如下几点: 现在项目开发前后端分离的趋势不可阻挡。Spring mvc这一套里面 部分 内容稍显落后了,例如视图部分可以说是耦合前端的逻辑,现在的后 …

Continue Reading

Digester解析xml原理

  • 2022 年 8 月 15 日
  • 筆記

Tomcat内部是使用Digester来解析xml文件的,将xml转化为java对象。 digester底层是基于SAX+事件驱动+栈的方式来搭建实现的,SAX主要用来解析xml,事件驱动主要是在解析的过程中加入事件来操作节点元素,栈主要是在节点解析开始和结束时对xml节点元素对应的对象操作入栈或出 …

Continue Reading

tomcat執行緒池

  • 2022 年 8 月 12 日
  • 筆記

tomcat线程池和普通的线程池设计上有所区别,下面主要来看看它是如何设计的 tomcat中线程池的创建 org.apache.tomcat.util.net.AbstractEndpoint#createExecutor tomcat创建线程池 public void createExecutor …

Continue Reading

servlet映射路徑匹配解析

  • 2022 年 8 月 10 日
  • 筆記

开头 servlet是javaweb用来处理请求和响应的重要对象,本文将从源码的角度分析tomcat内部是如何根据请求路径匹配得到处理请求的servlet的 假设有一个request请求路径为/text/servlet/get,并且在web.xml中配置了4个servlet,代码如下,那么该请求调用 …

Continue Reading

JavaWeb過濾器Filter(附tomcat部分源碼分析)

过滤器Filter 过滤器通常对一些web资源进行拦截,做完一些处理器再交给下一个过滤器处理,直到所有的过滤器处理器,再调用servlet实例的service方法进行处理。过滤器可以对request进行处理也可以对response进行处理。 处理顺序 如果过滤器链顺序如上图所示,那么对request …

Continue Reading