自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(15)
  • 收藏
  • 关注

原创 分布式事物解决方案

在分布式开发中,当系统被拆分成多个模块之后,一个看似简单的功能,内部可能需要调用多个服务并操作多个数据库实现,服务调用的分布式事务问题变的非常突出。本文主要介绍一下分布式开发中常用的解决方案。常用的分布式解决方案有如下方案,基于XA协议的二阶段、三阶段提交、基于MQ消息队列的最终一致性方案,TCC、Saga,还有阿里刚开源不就的Fescar。本文主要对这些理论做介绍,后面还会对这些理论的实现方案...

2019-06-04 17:38:43 189

原创 分布式基础理论

CAP理论 BASE理论 分布式开发 分布式事物 分布式开发教程

2019-06-04 14:25:49 253

原创 ES基础概念

1.倒排索引倒排索引源于实际应用中需要根据属性的值来查找记录。由于不是由记录来确定属性值,而是由属性值来确定记录的位置,因此称为倒排索引。倒排索引里有三个文件,索引词文件,词频文件,位置文件。2.索引词索引词是一个能够被索引的精确词。3.文本文本是一段普通的非结构化文字。3.分析分析是将文本转换为索引词的过程,分析的结果依赖于分词器。4.集群集群由一个或多个

2017-08-29 19:18:06 1611

原创 ActiveMQ 总结

前端时间系统改造,要使用MQ,开始MQ版本没定。自己就把ActiveMQ,RabbitMQ,RocketMQ的入门都粗略的学习一遍。现在老大已决定在给客户演示的时候用RocketMQ,然而上线的时候却要用非开源的,例如某东的JMQ,某Q的CMQ。现在版本已出,测试通过,无聊中,顺便整理一下前段时间自己的学习成果。ActiveMQ入门http://www.cnblogs.com/zhuxiaojie

2017-06-19 15:30:56 384

原创 java异常处理和设计总结

前言本文只写给自己看。1.什么是异常异常表示没有遵守契约。2.异常的信息在出现了异常情况,为了监控优化程序,统计异常信息,我们可能会将异常信息记录到数据库,为了调试程序,定位错误,我们可能会将程打印到输出日志,即使你非常肯定捕获到的异常不会以任何方式对程序造成影响,我们也应该用log日志输出警告信息,以便日后更新和维护。也就是说只要出现了异常,我们都会输出异常信息。

2017-03-27 20:36:08 256

原创 分布式基础理论

本文为书籍>读书笔记,文中大部分内容来源于书中,侵权必删!一.CAP理论CAP理论:一个分布式系统不能同时满足一致性,分区容错性,可用性。一致性:在分布式环境中,一致性是指多个副本直接是否能够保持一致的特性。可用性:指系统的服务必须一直处于可用的状态,对于用户的每一个操作请求总是能够在有限的时间内返回结果。分区容错性:分布式系统在遭到任何网络分区故障的时候,仍然需要能够保证对外

2017-03-14 23:09:23 497

原创 SpringMVC源码分析 DispatcherServlet请求处理过程

HandlerExecutionChainDispatcherServlet是SpringMVC中的前端控制器,负责接收请求,转发,匹配,数据处理后,还转由页面进行展现,是SpringMVC实现中核心的部分,本篇文章就是分析请求处理的过程。先看一下入口方法@Override protected void doService(HttpServletRequest request, Http

2017-03-12 23:13:51 427

原创 spring源码解读 AOP原理

本文主要分析通过这种标签来使用spring AOP的过程。Spring版本是4.1.7。在我看来Spring AOP主要分四个步骤,加载解析AOP标签,生成代理对象,拦截器的调用。下面就是通过这四个方面来分析Spring AOP的原理。一.容器初始化,解析AOP标签。1.先看一下我跟源码时关于AOP的配置

2017-03-11 03:09:52 2756 2

原创 Spring源码解读 Spring初始化Bean时扩展

前言在此之前写了2篇博客,分析了springIOC容器初始化的过程和spring Bean依赖注入的过程,spring在初始化时还做了很多事情,比如注册执行BeanFactoryPostProcessor,注册BeanPostPorcessor。本篇文章主要就是为了分析这俩点,还有bean依赖注入过程中Bean的初始化。正文用过spring的都知道,在定义bean的时候可以指定in

2017-03-09 00:52:28 717

原创 spring源码解读 Bean的依赖注

前言spring IOC容器在初始化时将我们定义的Bean转换成了Spring内部使用的数据结构BeanDefinition,具体过程可以参考我的这篇博客。Spring源码解读 IOC容器初始化本篇内容开始分析Bean的实例化和依赖注入,也就是我们调用BeanFactory的getBean()方法时,spring的内部过程。正文在我们调用getBean()方法触发依赖注入时...

2017-03-08 21:26:23 412

原创 Spring源码解读前篇--Spring容器的设计

看spring源码前,我们要做些什么自己打算仔细的看一下spring的源码,深入的了解一下spring的原理。自己喜欢在分析源码之前看一下总体的设计思想。这篇文章就是在分析了ClassPathXmlApplicationContext类的结构关系图之后。自己对Spring IOC容器设计的理解。类关系图如下:先对上图做一下解释,因为这幅图没有遵循类关系图的标准,

2017-03-07 21:59:41 264

原创 Spring源码解读 IOC容器初始化

前言自己对IOC容器和Spring容器理解是不一样,在我看来IOC容器的基本功能就是获取Bean,没有其它功能。而spring容器就是在IOC容器基础上扩展了许多功能,例如生命周期的管理,支持不同的信息源,应用事件等等。而本篇文章主要就是来分析IOC容器的初始化过程,通过分析这一过程让我们了解,我们定义好bean之后,spring内部做了些什么。分析源码的版本是spri

2017-03-07 21:41:47 314

原创 CobarClient源码分析

前言Cobar Client是一个阿里开源的轻量级分布式数据访问层,基于Ibatis和Spring框架。最近公司的项目在分表分库时使用此框架,起初不明白为什么使用这么老,没人维护的开源框架。后来想想是根据现有代码,迁移起来简单吧。既然用了,就还是仔细看下,深入的了解一下CobarClient的原理吧。正文

2017-03-01 23:13:34 1221

原创 MySQL事物总结

一、事物的基本概念  事物是数据库系统工作的一个逻辑单元,它由一个或多个SQL组成。对于数据库而言数据库事物是不可分割的工作单元。一个事物内的SQL语句要么全部执行,要么全部不执行,如果其中有任何一条语句无法执行,那么所有的语句都不会执行。事物有以下基本特性。原子性(automicity)一个事物必须被视为一个不可分割的最小单元,整个事物中的所有操作要么全部提交成功,要么全部失败回滚,

2016-10-01 00:04:50 314

原创 以此勉励

我们每个人在内心深处都怀有一个梦想:创造一个鲜活的世界,一个宇宙。那些处在我们生活的中心,被称为架构师的人们,拥有着这样的渴望:某一天,在某一个地方,因为某种原因,创造出一个不可思议的,美丽的,夺人心

2015-06-23 12:27:35 458

空空如也

空空如也

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

TA关注的人

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