- 博客(18)
- 资源 (17)
- 问答 (2)
- 收藏
- 关注
原创 关系型数据库的架构演变
关系型数据库的架构演变在互联网场景下,关系型数据库常见的性能瓶颈主要有两个大量的并发 读/写操作,导致倒库出现难以承受的负载压力单表存储数据量过大,导致检索效率低下数据库读写分离在系统初期,整体的并发了相对较小,因此一般都是将所有的数据信息存储在单库中进行读/写操作。但是随着用户规模不断提升,单库逐渐力不从心,TPS/QPS越来越低。因此到了这个时候,dba会将数据库...
2018-05-31 12:54:08 1492
原创 dubbo 长连接
dubbo://Dubbo 缺省协议采用单一长连接和 NIO 异步通讯,适合于小数据量大并发的服务调用,以及 服务消费者机器数远大于服务提供者机器数的情况。 反之,Dubbo 缺省协议不适合传送大数据量的服务,比如传文件,传视频等,除非请求量很 低。 Transporter: mina, netty, grizzy Serialization: dubbo, hessian2, ja...
2018-05-30 14:18:35 9962 4
原创 Spring源码解析(十六)Spring是如何利用注解管理IOC容器的
前面的文章基本上把Spring IOC这一块讲的差不多了, 但是一直都是基于Xml配置来讲解的,所以我想分析一下,Spring中是如何通过注解来管理IOC的;Spring注解配置工作原理源码解析本文先占个坑,这部分内容比较复杂,最近工作比较忙,没有时间分析,但是先占个坑,等下次周末的时候来写;...
2018-05-21 10:50:15 4607
原创 Spring源码分析(十五)Spring中常用注解使用以及源码分析
从Java5.0开始,Java开始支持注解。Spring做为Java生态中的领军框架,从2.5版本后也开始支持注解。相比起之前使用xml来配置Spring框架,使用注解提供了更多的控制Spring框架的方式。现在越来越多的项目也都在使用注解做相关的配置,但Spring的注解非常多,相信很多注解大家都没有使用过。本文就尽量全面地概括介绍一下Spring中常用的注解。 JAVA注解了解一下1...
2018-05-20 20:01:35 4814
原创 Java注解详细
注解语法因为平常开发少见,相信有不少的人员会认为注解的地位不高。其实同 classs 和 interface 一样,注解也属于一种类型。它是在 Java SE 5.0 版本中开始引入的概念。注解的定义注解通过 @interface 关键字进行定义。public @interface TestAnnotation {}它的形式跟接口很类似,不过前面多了一个 @ 符号。上面的代码...
2018-05-20 17:56:03 2656 2
原创 Spring源码解析(十四)Spring调用初始化方法initializeBean
在执行完填充属性的方法populateBean(beanName, mbd, instanceWrapper)之后,就要执行初始化initializeBean方法了; show the code:protected Object initializeBean(final String beanName, final Object bean, RootBeanDefinition mbd) {...
2018-05-18 14:19:31 9571 1
原创 Spring源码解析(十二)Spring扩展接口SmartInstantiationAwareBeanPostProcessor解析
之前我们分析了 InstantiationAwareBeanPostProcessor、BeanPostProcessor、今天来分析一下SmartInstantiationAwareBeanPostProcessor的用法;SmartInstantiationAwareBeanPostProcessor 继承自 InstantiationAwareBeanPostProcessor; 但...
2018-05-17 11:19:41 11611 3
原创 Spring源码解析(十一)Spring扩展接口InstantiationAwareBeanPostProcessor解析
TODO…先占一个坑
2018-05-15 13:53:56 22382 6
原创 Spring源码解析(十)分析一个Spring循环引用失败的问题
前言:之前我们有分析过Spring是怎么解决循环引用的问题,主要思路就是三级缓存;Spring在加载beanA的时候会先调用默认的空构造函数(在没有指定构造函数实例化的前提下)得到一个空的实例引用对象,这个时候没有设置任何值,但是Spring会用缓存把它给提前暴露出来,让其他依赖beanA的bean可以持有它提前暴露的引用;比如 a 依赖b ,b依赖a,并且他们都是通过默认方法实例化,那么简单...
2018-05-13 17:51:16 5147 1
原创 Spring源码分析(九)lazy-init 在Spring中是怎么控制加载的
一、lazy-init说明:ApplicationContext实现的默认行为就是在启动时将所有singleton bean提前进行实例化(也就是依赖注入)。提前实例化意味着作为初始化过程的一部分,ApplicationContext实例会创建并配置所有的singleton bean。通常情况下这是件好事,因为这样在配置中的任何错误就会即刻被发现(否则的话可能要花几个小时甚至几天)。<...
2018-05-13 15:12:56 5752
原创 Spring源码分析(八)Spring 所有BeanFactoryPostProcessor扩展接口
这一篇分析的不错,我就不分析这个接口了;偷个懒0.0 Spring的BeanFactoryPostProcessor和BeanPostProcessor
2018-05-12 15:20:21 5053
原创 Spring源码分析(七)扩展接口BeanPostProcessors源码分析
BeanPostProcessors在spring中是一个非常重要的扩展接口,它使得我们可以在创建bean实例的前后做一些自己的处理;接下来我们就从源码层面来分析一下它是如何发挥作用的;一、bean的生成过程二、BeanPostProcessors简要说明我们看下BeanPostProcessors的接口public interface BeanPostProc...
2018-05-12 12:03:15 10531 6
原创 Spring源码分析(六)FactoryBean 接口解析
说道FactoryBean,不少人会拿它跟BeanFactory作比较,但是实际上他们没有多大关系;我们简单介绍一下两者一、BeanFactory和FactoryBean区别BeanFactory BeanFactory:这就是一个Factory,是一个IOC容器或者叫对象工厂,它里面存着很多的bean。例如默认的实现方式DefaultListableBeanFactory...
2018-05-12 00:32:04 5621 5
原创 Spring源码解析(五)Spring 加载bean 依赖注入
在开始这篇文章之前,我们简单回顾一下前面几篇文章的内容至此,我们分析过后,可以简单的归纳一下Spring IOC容器的过程 一、Resource定位过程;这个Resource定位指的的是BeanDefinition的资源定位,他由ResourceLoader通过统一的Resource接口来完成,这个Resource对各种形式的BeanDefinition的使用都提供了统一接口,对于这些Bea...
2018-05-08 17:43:07 7006
原创 Spring源码解析(四)Spring是怎么处理BeanDefinition的?
上一篇文章中分析了 BeanDefinition是怎么被解析出来的,在这一篇文章中我们主要看下 解析完了之后所做的事情;一、DefaultBeanDefinitionDocumentReader源码入口processBeanDefinition(Element ele, BeanDefinitionParserDelegate delegate) /** ...
2018-05-07 15:24:59 5198
原创 Spring源码分析(三)Spring是如何把元素解析成BeanDefinition对象的
spring中解析元素最重要的一个对象应该就属于 BeanDefinition了;这个Spring容器中最基本的内部数据结构;它让xml文件中所有的配置有了一个归属的地方;在xml中存在的配置都能在BeanDefinition找到对应的属性;我们今天来看看BeanDefinition是如何被创建的1.BeanDefinition Spring 容器中的内部数据结构,是转换为容器中b...
2018-05-07 15:13:46 5945 1
原创 Spring源码分析(二)Spring怎么扩展解析xml接口的
自定义Spring配置https://blog.csdn.net/bingduanlbd/article/details/38770685BeanDefinitionParserDelegate 在DefaultBeanDefinitionDocumentReader处理Document元素时,将Document文档内元素具体解析工作委托给BeanDefinitionParse...
2018-05-02 17:54:28 4375
Centos 7环境开发者环境初始化脚本
2018-12-26
ffmpeg for Linux
2018-12-21
MAC 的 ffmpeg
2018-12-21
dubbo官方文档
2018-05-30
SpringMVC+FREEMARK+Redis
2016-10-26
eclipse svn 插件下载
2015-08-21
SpringMVC4.0+MYBATIS3.0
2014-11-23
JAVA实现GAME2048
2014-07-25
java基础 继承和多态实例
2014-07-16
早上早点起床可以学习两个小时
2021-04-29
OAUTH2.0授权登陆怎么保持登陆状态
2016-11-05
TA创建的收藏夹 TA关注的收藏夹
TA关注的人