- 博客(13)
- 收藏
- 关注
转载 分布式一致性算法----Raft
Raft 是解决分布式一致性的协议。Raft将分布式系统中的结点分成三种状态:Leader,Follower,Candidate。大致分为如下几步: 一、 Leader Election (1)所有的结点初始都为 follower状态。 (2)如果followers 不能从Leader...
2017-06-29 17:41:00 167
转载 JUC------ConcurrentHashMap 详解
一、为什么要有ConcurrentHashMap ConcurrentHashMap是线程安全且高效的HashMap。 正常业务场景中,我们会经常会用到HashMap,而在多线程环境下,java.util.Hashmap进行put操作时会导致死循环,是因为多线程会...
2017-06-20 18:15:00 158
转载 Java锁详解(二)------ LockSupport 与 Condition
一、LockSupport LockSupport 工具可以帮助我们阻塞或唤醒一个线程,也是构建同步组件的基础工具。 AQS中 对于节点的阻塞和唤醒就是通过LockSupport的park和unpark实现的。 LockSupport 与 对象的 wait/n...
2017-06-14 11:59:00 592
转载 Java锁详解(一)------ lock的实现
一、Lock与Synchronized的区别 Lock是个接口,有如下方法: lock():获取锁 lockInterruptibly():可中断的获取锁,与lock()不同的点是该方法会响应中断(锁获取中,可中断当前县城) tryLock(): 非阻塞获取锁,...
2017-06-07 14:31:00 230
转载 Spring Web MVC 源码分析(三)----- render 渲染页面
由上文可知,Spring Web MVC 框架调用了相对应的Handler之后,返回处理完的ModelAndView,会在ProcessDispatchResult中 调用渲染 render方法。 render方法的调用过程如下: //渲染页面protec...
2017-06-05 16:55:00 372
转载 Spring Web MVC 源码分析(二)----- Handle Http Request流程
上文已详尽描述DispatcherServlet的初始化,本文将详尽描述Spring Web MVC 如何处理一个Http请求。 一、架构说明 Spring Web MVC 处理一个Web 请求如下图: 1.用户发送请求到Dispatcher Servlet上...
2017-05-19 16:34:00 279
转载 Spring Web MVC 源码分析(一)----- DispatcherServlet
一、概述 整个Spring web MVC的设计思想都是围绕着 DispatcherServlet 分发requests 到 handlers 来设计的。 DispatcherServlet对于一个请求的处理工作流如下: DispatcherServlet...
2017-05-09 12:24:00 110
转载 Spring core 源码分析 ---- AOP(三) AOP代理
一、创建代理 接上文,在AbstractAutoProxyCreator的wrapIfNecessary方法中,拿到全部advisors后,需要创建目标Bean的代理Bean: // 拿到所有Advisors Object[] specificInterceptors = g...
2017-04-24 12:28:00 137
转载 Spring core 源码分析 ---- AOP(二) Spring AOP初始化
一、代码示例 根据上节了解到Spring AOP的介绍和基本架构,我们可以看一个Spring AOP的实例。 TestAopBean为需注入的Bean: public class TestAopBean { public TestAopBean(){...
2017-04-19 17:08:00 126
转载 Spring core 源码分析 ---- AOP(一) Spring AOP介绍
1.什么是 AOP? Aspect-Oriented Programming(AOP,面向切面编程)是对Object-Oriented Programming(OOP面向对象编程) 在设计程序结构时的一种完善和补充,而这一切的理念都是从模块化思想开始的。在OOP中最关键的组件单元...
2017-04-17 11:17:00 123
转载 Spring core 源码分析 ---- IoC容器(三) 循环引用
1. 什么是循环引用? 当Bean A依赖于bean B ,与此同时 BeanB依赖于BeanA: Bean A -> Bean B -> Bean A 这也是个循环引用的例子: Bean A -> Bean B -> Bean C -> Bean D ...
2017-04-11 18:19:00 152
转载 Spring core 源码分析 ---- IoC容器(二) getBean
上节提到了在AbstractApplicationContext 调用refresh方法里,初始化所有BeanDefinitions后,遍历所有BeanDefinitionNames后,循环调用BeanFactory的getBean(name)方法,实例化所有容器 Bean对象(非la...
2017-04-05 14:39:00 134
转载 Spring core 源码分析 ---- IoC容器(一) 初始化
IoC是什么,为什么要使用IoC容器? Spring-framework-reference 的原文描述如下: IoC is also known as dependency injection (DI). It is a process whereby objects define th...
2017-03-21 19:40:00 137
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人