深入理解kafka 电子版

转载至https://blog.csdn.net/u013256816/article/details/90085706 (扫描二维码购买电子版) 自从3月8日将原本的电子版下架后已有两月有余,今日重新将电子版的《深入理解Kafka》以掘金小册的形式上线。掘金没有推广,只能我自己上了,如有打...

2019-05-11 10:10:22

阅读数 379

评论数 0

你理解定时器原理吗

前言 前几天,肥佬分享了一篇关于定时器的文章你真的会使用定时器吗?,从使用角度为我们详细地说明了定时器的用法,包括 fixedDelay、fixedRate,为什么会有这样的区别呢?下面我们从源码角度分析下二者的区别与底层原理。 jdk 定时器 这里不再哆嗦延迟队列、线程池的知识了,请移步下面的链...

2019-04-25 11:34:34

阅读数 211

评论数 2

spring boot如何抛弃tomcat容器

我们在上一篇文章 spring boot单元测试 中提到了spring单元测试为SpringApplication指定spring容器实现类,从而达到抛弃tomcat容器的目的,我们这篇文章的目就是反其道而行,让spring boot抛弃tomcat容器。但是有些地方确实需要这么做,我们想利用sp...

2018-09-19 18:05:50

阅读数 1107

评论数 3

spring boot单元测试之druid NullPointException

最近在使用spring boot 对 Controller 进行单元测试时,发现 druid 竟然抛出了空指针异常。原因是,使用了druid的监控,需要经过druid的 Filter 拦截器,但是spring boot test未调用 Filter#init() 对 Filter 进行初始化。 ...

2018-09-16 22:57:06

阅读数 614

评论数 0

Tomcat8源码分析系列-关于tomcat热加载的一些思考

在前面的文章中,我们分析了 tomcat 类加载器的相关源码,也了解了 tomcat 支持类的热加载,意味着 tomcat 要涉及类的重复卸装/装载过程,这个过程是比较敏感的,一旦处理不当,可能会引起内存泄露 卸载类 我们知道,class 信息存放在元数据区(1.7是 Perm 区),这一块的...

2018-05-30 17:13:18

阅读数 872

评论数 0

Tomcat8源码分析系列-类加载器

类加载器 在分析 tomcat 类加载之前,我们简单的回顾下 java 体系的类加载器 启动类加载器(Bootstrap ClassLoader):加载对象是java的核心类库,把一些的 java 类加载到 jvm 中,它并不是我们熟悉的 ClassLoader,而是 jvm 层面由 C/C...

2018-04-29 00:45:15

阅读数 928

评论数 3

Tomcat8源码分析系列-Session源码解析

在 web 开发中,我们经常会用到 Session 来保存会话信息,包括用户信息、权限信息,等等。在这篇文章中,我们将分析 tomcat 容器是如何创建 session、销毁 session,又是如何对 HttpSessionListener 进行事件通知 tomcat session 设计...

2018-03-29 00:29:35

阅读数 1193

评论数 5

Tomcat8源码分析系列-spring boot集成tomcat

spring boot集成tomcat;spring boot集成tomcat源码分析

2018-03-21 20:19:46

阅读数 906

评论数 0

spring源码扩展点与实战(二)

在上一篇文章《spring源码扩展点》,我们简单的介绍了 spring 的几个常用扩展点,了解了 BeanPostProcessor, BeanFactoryPostProcessor, BeanDefinitionRegistryPostProcessor, ApplicationListene...

2018-02-27 01:32:33

阅读数 550

评论数 5

spring源码扩展点与实战(一)

前言 我们在使用 spring 框架的时候,有时候需要做一些定制化开发,这个时候就有必要对 spring 进行一些个性化扩展。spring 的代码本身就是一门艺术,可以非常方便进行扩展,但是有时候应用场景比较复杂,可能会觉得无从下手,笔者也曾有这样的困惑,因此,本文总结了一些常用的扩展点,希望能...

2018-02-26 00:29:15

阅读数 782

评论数 0

Spring类型转换源码分析

前言 本文基于 spring 4.3.13 版本 在项目中我们经常使用 spring 提供的 IOC 功能,目前主要有两种方式:xml、注解,而这两种方式的原理是不同的,xml 的注入主要依赖 BeanWrapperImpl 进行属性注入,而注解是依赖 BeanPostProcesso...

2018-02-20 17:31:37

阅读数 687

评论数 0

Tomcat8源码分析系列-启动分析(四) webapp

前言 上一篇文章中我们分析了 Service、Engine、Host、Pipeline、Valve 组件的启动逻辑,在 HostConfig 中会实例化 StandardContext,并启动 Context 容器,完成 webapp 应用程序的启动,这一块是最贴近我们开发的应用程序。在这一篇文...

2018-02-15 14:14:53

阅读数 1592

评论数 0

Tomcat8源码分析系列-启动分析(三) Catalina启动

在上一篇文章中,我们分析了tomcat的初始化过程,是由Bootstrap反射调用Catalina的load方法完成tomcat的初始化,包括server.xml的解析、实例化各大组件、初始化组件等逻辑。那么tomcat又是如何启动webapp应用,又是如何加载应用程序的ServletContex...

2018-02-02 23:40:01

阅读数 632

评论数 0

spring websocket性能测试

业务背景 触屏版在线客服使用WebSocket技术替代传统的 Ajax 轮询方案,为了验证触屏版在线客服架构优化,预估架构优化后的性能是否可实现预期效果,避免及预防风险,因此对触屏版进行压力测试至关重要。 项目中使用了Spring websocket + SockJs + Stomp技术,虽然...

2018-01-15 23:01:19

阅读数 4998

评论数 1

spring websocket性能调优

由于之前的排版较混乱,现重新整理发布 TProfiler工具 TProfiler是一个可以在生产环境长期使用的性能分析工具。它同时支持剖析和采样两种方式,记录方法执行的时间和次数,生成方法热点、对象创建热点、线程状态分析等数据,为查找系统性能瓶颈提供数据支持。 TProfiler在JVM...

2018-01-14 09:45:48

阅读数 4082

评论数 0

spring websocket项目实践

本文基于spring websocket总结的项目实践经验,希望能够帮助大家 Websocket、sockjs、stomp简介 websocket WebSocket protocol是HTML5一种新的协议。它实现了浏览器与服务器全双工通信(full-duple)。 一开始的握手...

2018-01-13 23:57:09

阅读数 5319

评论数 4

Tomcat8源码分析系列-启动分析(二) Catalina初始化

# Bootstrap Tomcat运行是通过Bootstrap的main方法,在开发工具中,我们只需要运行Bootstrap的main方法,便可以启动tomcat进行代码调试和分析。Bootstrap是tomcat的入口,它会完成初始化ClassLoader,实例化Catalina以及load...

2018-01-13 14:57:09

阅读数 1334

评论数 0

Tomcat8源码分析系列-启动分析(一) Lifecycle

Lifecycle在其他框架中也很常见,比如spring,它常用于具有生命周期的组件,由Lifecycle控制组件的初始化、启动、销毁等动作,方便应用程序获取、释放某些资源,或者是触发某些特定的事件。Tomcat也是如此,在学习整个启动流程之前,我们先行了解下Lifecycle的实现机制,便于理解...

2018-01-13 14:53:49

阅读数 2401

评论数 2

Tomcat8源码分析系列-tomcat框架设计

总体架构 tomcat的总体架构如下图所示(摘自http://blog.csdn.net/jiaomingliang/article/details/47393141) 如上图所示,tomcat由Server、Service、Engine、Connerctor、Host、Context组件...

2018-01-13 14:51:06

阅读数 2934

评论数 5

Tomcat8源码分析系列-环境搭建

前言 为什么要学习tomcat源码? tomcat是目前非常流行的web容器,其性能和稳定性也是非常出色的,学习其框架设计和底层的实现,不管是使用、性能调优,还是应用框架设计方面,肯定会有很大的帮助 tomcat版本 该系列博客的tomcat版本是8.5.24 下载源码 从...

2018-01-13 14:46:57

阅读数 1639

评论数 1

提示
确定要删除当前文章?
取消 删除
关闭
关闭