自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(42)
  • 资源 (3)
  • 收藏
  • 关注

原创 经典语句(励志)

经典语句

2022-10-01 16:06:46 128 1

原创 秒杀系统

图1秒杀主要代码;图2秒杀时间 的校验;为什么后台还要再次校验秒杀时间呢,前台的js都可以在前端去修改的。图3真正的下单;图4填充订信息;图5图6图7图8...

2020-07-29 22:51:27 131

原创 Spring Boot源码解析 (启动流程分析)流程图

2020-07-06 09:37:07 698

原创 Spring Boot源码解析 (观察者模式)流程图

2020-07-03 10:16:52 345

原创 Spring 源码解析十(5个后置处理器在9个spring地方的使用)流程图

2020-07-02 17:58:26 415 1

原创 Spring 源码解析九(属性填充)流程图

补充资料:当第一次getBean(y)后调doCreateBean(x) 方法执行完后回 放到singletonsCurrentlyInCreation 中一个标记为正在创建,把一个new好的bean放在一个singletonFactories 中。然后只是populateBean(y),resolveDependency(). resolveCandidate() 方法时候第二次调用getSingleton()方法此时这个singletonsCurrentlyInCreation已经标记为正...

2020-07-01 22:19:13 294

原创 Spring 源码解析八(无参构造方法,特殊构造方法如何实例化)流程图

2020-07-01 12:30:50 297

原创 spring 源码Aop(七)流程图

2020-06-29 14:11:13 702

原创 spring源码解析(二三四五六)(refresh方法中doScan逻辑)流程图

2020-06-22 22:49:41 571

原创 spring 源码解析(一)(单个bean的注册流程图)

2020-06-15 22:19:18 132

原创 dubbo 的可扩展机制 spi源码解析(流程图)

首先感谢周瑜老师分享;

2020-06-10 07:17:56 266

原创 dubbo 服务调用与容错,服务降级,负载均衡源码(流程图)

2020-06-08 21:07:11 308

原创 dubbo 的服务引入和服务目录源码解析(流程图)

dubbo 的服务引入和服务目录源码解析

2020-05-28 22:00:07 256

原创 Rocket mq

图1rocket mq 的作用:消峰,异步,解耦。producer 集群生产者相当于我们的订单服务集群,consumer集群服务消费集群相当于统计服务,每消费一个订单,服务加1;broker 消息中间件的,中转消息存储消息的。name Servcer 就是去维护整个集群的状态,高可用的。很想dubbo里的注册中心zookeeper。图2对于rocketmq来说,生产...

2020-05-04 22:27:59 266

原创 Spring Cloud Zuul 源码深度解析

首先感谢诸葛老师分享;路由器的主要功能是:过滤,路由。图1图2图3图4图5只有当ZuulProxyMarkerConfiguration示例化之后才会生效。初始化zuulServlet。图6每一种情况都try{}catch 。除了异常就异常处理。图7图8图9图10 m...

2020-05-03 23:07:55 226

原创 Spring Cloud之 Hystrix源码分析

首先感谢 诸葛老师分享Hystrix源码流程图1首先调用findById方法 调用接口报错的话,会走降级的方法 findByIdFallback方法。如果commandKey是空默认是类名。还可以配置线程池参数,目的是线程间的隔离。熔断, 降级图2图3图4图5图6图7...

2020-04-25 10:44:12 704 2

原创 Spring Cloud Ribbon&Feign

Ribbon 感谢诸葛老师分享Ribbon调用流程总图Ribbon源码分析图1@LoadBalanced这个注解加到RetstTemplate中。图2真正调用的话通过restTemplate ,通过服务名称把他解析成对应的ip,他一定是吧这个服务名对应的eureka 所有的ip拿过来,根据负载均衡挑一个ip出来替换这个名称,最终才去执行httpc...

2020-04-21 07:13:39 265

原创 Spring Cloud -Eureka 源码

图1图2图3图4主类中最重要的是这个注解@SpringBootApplication图5正常启动后的页面图6图7这个类的作用就是激活EurekaServerAuoConfiguration 这个类。在spring 启动的时候启动。图8spring 在启动的时候会把这个类加载到容器中。但是并一定启动。 图9 。是否...

2020-04-19 21:06:33 443

原创 spring boot 源码解析(重点启动流程分析)

图1spring boot的启动 两种启动方式。图2这个注解类很重要,下次讲。图3图4图5图6图7注意spring 传的resourceLoader为null ,270行推断webApplicationType的类型。推断出来这个servlet图8这个项目是一个web项目。图9推断webA...

2020-04-15 10:12:17 175

原创 SpringMvc 源码解析

图1首先加入 spring——webmvc依赖。图2首先我们要明白一个请求的过程。一个request 请求 首先经过一个 servlet 。然后同反射获取类名和方法名,调用controller类的对应方法。图3图4setLonadOnStartup(1) 的作用是回执行DispatcherServlet的init()方法。图5...

2020-03-26 22:00:10 213

原创 spring boot 源码解析准备二(观察者模式)

举例场景说明;一个人一直在看电影,当电影播放到4秒的时候,这个人要去上厕所。图1图2首先设置一个标记来标记是否已经到了需要上厕所的时间。如果到了把他改为true;图3这个人一直在看电影直到电影那边返回true他才要去上厕所。run方法以下面的为准。通过上面的例子我们发现,这个人一直在看电影,一直在while循环中,这样cpu消耗很大。我们能不能改成这样...

2020-03-26 11:10:57 220

原创 SpringBoot源码解析(准备)

图1springboot和springmvc他们的结合点事那个,传统的springmvc 需要做的事情是初始化spring环境,读取xml,注册servlet,扫描controller,2json解析,3视图解析器,那么问题来了,springboot 没有xml。没有办法做以上的事情,他是咋么做到的呢?他是如何内嵌tomcat呢....

2020-03-24 17:24:08 153

原创 Spring 源码 十(Spring 容器和Spring mvc 容器的区别,Spring 中5个后置处理器,在9个不同地方的调用过程)

图1图2-0 onStartup()问题来了,ac.refresh() 的作用是什么? ,这行代码是spring最核心的地方。图4 。14行初始化spring环境,注册配置类。创建一个dispatcherServlet类,然后把这个spring环境交给dispatcherServelet 。dispatcherServelet就和spring环境关联起来。例如dispat...

2020-03-19 22:37:57 432

原创 Spring 源码九(属性填充)

图1-0图1-1图1-2图1-3图1图2图3图4此时的beanFactory是DefalutListableBeanFactory。所以执行这个类的preInterantiateSingletons()方法。图5743行拿出所有的bd名称。754 行判断是否有父的bd 。如果有父的bd。把父的bd和子的bd...

2020-03-09 13:38:25 529

原创 Spring 源码 八(无参构造方法,特殊构造方法如何实例化)

图1图2图3图4此时的beanFactory是DefalutListableBeanFactory。所以执行这个类的preInterantiateSingletons()方法。图5743行拿出所有的bd名称。...

2020-02-22 20:12:37 670

原创 Spring 源码解析 七(aop )

图1图2图3注册beanPostProcessor spring 的后置处理器。为什么需要注册呢?图3-0图3-0spring 首先把一个bd转化成bean, 变成bean以后实例化,示例化完成之后开始调用有BeanPostProcessor元素的List 的后置处理器。执行完后置处理器开始生命周期的回调 ,例如init方法,destory()方法...

2020-02-20 16:18:26 178

原创 Spring Aop(一)源码解析

图1 Aop示例:图2图3图4图5打印结果

2020-02-19 21:58:11 86

原创 mybatis源码解析一,二,三

图1<mapper resource="org/mybatis/example/BlogMapper.xml">mybatis解析mapper有几种形式。有四种。第一种<mapper resource> 第二种<mapper url=> ,第三种<mapperpackage> ,第四种<class>图2读取配置m...

2020-02-02 17:52:31 134

原创 Spring 源码六

图1图3图4图5图6图7添加了BeanPostProcessor()图8图9判断是否代理过,如果实现了EnHancedConfiguration这个接口证明被代理过,直接返回。图10图11图12图13代理后的对象有$beanFactory对象的属性。图...

2020-01-31 21:00:22 153

原创 Spring 源码(四,五)

图1调用refresh() 方法,来解析注解。图2执行已经注册的后置处理器.图3726行gentBeanFactoryPostProcessors() 方法,返回的List 是 是程序员 通过调用AnnotationConfigAppLicationContext.addBeanFactoryPostprocessor() 方法手动添加的。如果没有添加这...

2020-01-28 22:59:04 131

原创 Spring 源码(三)

流程回顾图1初始化spring容器图2调用父类的构造器创建工厂图3图4图创建DefaultListableBeanFactory工厂.图5实例化AnnotatedBeanDefinitionRreader和 ClassPathBeanDefinitionScanner(). 但是注意 这个AnnotationConfigApplicatio...

2020-01-23 15:20:02 137

原创 Spring 源码(二)

图1i图1在执行 new AnnotationConfigApplicatIonContext() 的时候,首先调用 AnnotationConfigApplicationContext的父类GenericApplicationContext的 构造器,图2图3GenericApplicationContext()构造器 会创建一个DefaultListablieB...

2020-01-11 22:43:36 190

原创 spring 源码解析(一)

图1图1 new AnnotationConfigApplicationContext() 可以传配置类Appconfig.class,,也可以传普通bean对象,如图1-1 当传Appconfig.class配置类的时候会调用refresh()方法。传bean的时候不会调用。 refresh()方法是初始化我们容器的。图2图3总结 图1到图4 为 :Annotaio...

2020-01-04 16:47:37 194

原创 fork-join框架

图1.背景简绍图2图3总结: 图1到图3说明cpu 根据摩尔定律,随机主频的不断提高,软件不需做任何改变就能得到性能的提升。但是到达一定的时间主频已经到达极限,没有办法再提升了,只能依靠 增加cpu 核数来提高性能了。但是实际中的情况是,生产商可以加更多的核数,公司也可以买更多的核数,但是,软件缺没有做好准备, fork-join 闪亮登场了。这个时候只能...

2019-12-25 22:13:14 104

原创 zookeeper客户端与服务端交互流程源码解析

客户端发送请求和接收请求。图1图1 zkCll.sh 启动时会调用zookeeperMain() 方法。古这是入口。图2图2 290行 new ZookeeperMain , 297行连接zk 图3图 3 277 判断zk的状态, 281行设置只读, 282行 new Zookeeper()图4图4 445 行赋值watcher给默认的de...

2019-11-26 09:00:35 787

原创 Zookeeper集群模式下的请求处理流程源码解析(ZK是如何保证数据一致性的?)

图1图1集群下的zookeeper启动的顺序。需要注意的是 同步数据完成后才能 client才能访问该集群。图2图3图4总结:集群环境下,leader,Follower,Observer,是在启动socket 后,通过选举进行确定leader,follower,observer。 当client发送写请求时,oberserver,follower ...

2019-11-24 19:46:20 383

原创 dubbo 的可扩展机制 spi源码解析

图1图1调用的整个过程。图2图2 url 的定义。图3图4图3 图4表示invoker图5图6图 6spi 定义。图7 jdk spi 实例图7定义了一个接口CarInterface ,图8实现这个接口为BlackCar ,图9 实现了这个接口为redCar,. 图10 21行加载这个接口的实现类从...

2019-11-18 09:28:03 145

原创 dubbo 服务暴露引用,调用整个流程图

2019-11-17 14:53:25 579

原创 dubbo 服务调用与容错,服务降级,负载均衡源码

图1图1 服务调用的开始 26行 会使用动态代理来完成调用过程。图2.图2图2 默认的javassist执行 ProxyFactory 代理类 的实现类 JavaSsistProxyFactory ; 如图3,图4。 通过调用invoker()方法来完成调用逻辑。图5图3图4图5图5 对传进来的参数进行方法校验, 此时的invoker 是Moc...

2019-11-10 18:26:04 177

原创 dubbo 的服务引入和服务目录(二)(总结)

图1图1服务引用开始是从ReferenceBean 类的getObject() 方法开始的图2图 2 在init() 方法中赋值到ref,图3图 3 init() 的核心是createPrxy()方法,创建好的代理类对象赋值给ref.图4图4 366行核f心,一般就是一个注册中心不会有直连的情况。 url是registry开头的。例如regis...

2019-11-09 16:06:41 127

SPRING技术内幕:深入解析SPRING架构与设计原理.zip

SPRING技术内幕:深入解析SPRING架构与设计原理.zipSPRING技术内幕:深入解析SPRING架构与设计原理.zipSPRING技术内幕:深入解析SPRING架构与设计原理.zip

2018-03-26

Java程序性能优化 让你的Java程序更快、更稳定

Java程序性能优化 让你的Java程序更快、更稳定 Java程序性能优化 让你的Java程序更快、更稳定 高清 高清

2018-03-26

Head First 设计模式 扫描版

扫描件,高清 扫描件,高清 扫描件,高清 扫描件,高清 扫描件,高清 扫描件,高清

2018-03-26

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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