源码分析
文章平均质量分 94
tinysakurac
蹒跚学步的猿
展开
-
netty DefaultEventLoopGroup踩坑
踩坑过程大家都知道使用netty时应该尽量不要阻塞i/o线程,而应该把耗时的业务逻辑放在其他线程中等计算出结果后再通过i/o线程提交给请求者,netty 为了隔离这些处理耗时业务的ChannelHandler,在向pipline中添加ChannelHandler时提供了可以同时指定ChannelHandler执行业务线程的api /** * Inserts {@link ChannelHandler}s at the first position of this pipeline. *原创 2020-10-13 17:07:48 · 2128 阅读 · 3 评论 -
Netty NioEventLoop 启动过程源码分析
转载自王维_hz的博客Netty版本:4.1.30在之前分析 Channel绑定 的文章中,提到过下面这段代码,先前只讲了 channel.bind() 绑定逻辑,跳过了execute() 接口,现在我们以这个为例,开始分析NioEventLoop的execute()接口,主要逻辑如下:启动绑定当前线程到EventLoop上调用EventLoop的run()方法private static void doBind0( final ChannelFuture regFuture,转载 2020-10-10 10:59:19 · 133 阅读 · 0 评论 -
Spring源码分析——IOC容器
1、IOC容器的概念理解IOC容器的概念之前首先需要了解依赖翻转(又称依赖倒置)的概念许多复杂的应用都是通过多个类之间的彼此合作实现业务逻辑的,这使得每个对象都需要管理自己与其合作对象的依赖,而如果这个过程如果交给对象自身实现将会导致代码的耦合度过高。因此出现了依赖反转的概念依赖反转将对象间的依赖关系交由框架或者ioc容器实现与维护,从而在降低代码耦合度的同时提高代码的可测试性。这就叫做...原创 2018-10-19 20:01:26 · 397 阅读 · 0 评论 -
Spring源码分析——SpringMVC实现
Spring MVC概述Spring MVC是Spring的一个重要模块,在Web应用中MVC的设计模式已经广为人知,MVC的设计概念如下图所示MVC模式在UI设计中使用的非常普遍,在Gof的设计模式的经典著作中,开篇就是这个模式。这个模式的额主要特点是分离了模型,视图与控制器三种角色,将业务处理从UI设计中独立出来,封装到模型与控制器设计中去。使得它们相互解耦可以独立扩展。使用Sprin...原创 2018-10-22 22:12:21 · 281 阅读 · 0 评论 -
Spring源码分析——Aop实现
1、Aop概念回顾Aop是Aspect-Oriented Programming(面向切面编程)的简称,维基百科对于它的解释如下:Aspect是一种新的模块化机制,用来描述分布的对象,类或函数中的横切关注点,从关注点分离出横切关注点是面向切面的程序设计的核心概念。分离关注点使解决特定领域问题的代码从业务逻辑中独立出来,业务逻辑的代码中不再包含对特定领域问题代码的调用,业务逻辑中特定领域问题的...原创 2018-10-21 21:51:08 · 232 阅读 · 0 评论 -
shiro中session实现的简单分析
前阵子对shiro进行分布式环境下的改造时跟了一遍源码,当时只是使用了思维带图简要的记录了一下方法的调用过程。最近有空了决定用博客详细的记录分析一下这个流程,以帮助自己更好的理解。配置首先看看shiro在web.xml文件中的配置 <!-- shiro过滤器 --> <filter> <filter-name&原创 2018-08-28 15:48:33 · 4821 阅读 · 4 评论