240 发简信
IP属地:浙江
  • Tomcat源码学习笔记 - Connector组件(二)

    前言 上一篇文章讲到Poller处理完之后,交给SocketProcessor执行处理,这篇就详细记录下这个处理过程。 SocketProcessor SocketProce...

  • Tomcat源码学习笔记 - Connector组件(一)

    Connector组件 Tomcat作为一款web容器,响应处理请求,需要与底层数据做交互,而Connector组件就是Service服务与Socket套接字之间的桥梁。Co...

  • Tomcat源码学习笔记-整体架构

    前言 Tomcat作为目前非常流行的web容器,其架构设计是非常值得我们借鉴的,它的生命周期管理、多级容器的协调工作,同时在Tomcat中运用了很多设计模式。 顶层架构 To...

  • JDK动态代理-二级缓存的实现机制

    前言 ​ 代理模式为对象提供一种代理以控制对这个对象的访问,而Java动态代理就是代理模式的一种实现,其优势是实现无侵入式的代码扩展,也就是方法的增强,让我们可以在不用...

  • 深入理解单例模式

    前言 ​ 单例模式有很多种形式:饿汉式、懒汉式、DCL(双重校验)、静态内部类、容器单例、ThreadLocal单例,具体代码请查看单例模式的7种形式。本文着重记录下序列...

  • 用python为Gitalk博客评论插件自动化创建issue

    前言 ​ 由于Disqus在国内加载比较慢,所以选了Gitalk作为博客的评论插件,支持markdown语法。但是Gitalk 需要手动初始化所有文章的评论或者一个一个点...

  • 由“String不可变”引发的一些思考

    字符串常量池 ​ JVM为了字符串的服用,减少字符串对象的重复创建,特别维护了一个常量池。 ​ jdk1.7之前的版本,常量池存放在方法区,方法区和JAVA堆一样,是...