RocketMQ源码解析之Broker初始化

阅读须知 文章中使用/* */注释的方法会做深入分析 正文 在启动Broker时,我们会使用类似下面的命令: nohup sh bin/mqbroker -n localhost:9876 & 在mqbroker...

2019-03-10 21:51:52

阅读数 75

评论数 0

RocketMQ源码解析之NameServer请求处理

阅读须知 文章中使用/* */注释的方法会做深入分析 正文

2019-02-13 21:46:09

阅读数 90

评论数 2

类加载过程结合Spring案例分析

案例 最近在分析一个有关类加载过程的问题,代码如下: @Component public class SpringContextUtils implements ApplicationContextAware { private static ApplicationContext app...

2019-01-27 17:30:24

阅读数 76

评论数 0

Spring源码解析之bean的创建

阅读须知 研究了半天markdown也没发现怎么为代码块中的重点代码做特殊标记,所以这里使用//单行注释做代码的简单注释,而/**/多行注释的代码注释的同时会做深入分析,同时为了避免篇幅过长,删掉了Spring原来的注释和空行,建议配合Spring源代码进行阅读,本文对应的Spring源码的版本...

2019-01-27 14:06:08

阅读数 4543

评论数 2

类加载过程整理

各种调用初始化顺序 我们用一个小demo来验证一下各种调用的初始化顺序: demo1 public class Test { public static void main(String[] args) { new C1(); } } class C1 { ...

2019-01-26 20:29:16

阅读数 100

评论数 2

RocketMQ源码解析之NameServer启动和停止

阅读须知 文章中使用/* */注释的方法会做深入分析 正文 关于RocketMQ源码的下载和构建,这里不多重复,很简单,相信大家都搞的定。 启动请参考官方文档:http://rocketmq.apache.org/docs/quick-start/ 源码git地址:https://githu...

2019-01-24 20:38:45

阅读数 173

评论数 2

MyBatis缓存不一致问题测试

数据准备 首先我们创建两张表: CREATE TABLE `person` ( `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键', `age` int(11) NOT NULL DEFAULT '0' COMMENT...

2019-01-02 17:00:55

阅读数 94

评论数 9

Dubbo源码阅读顺序

Dubbo源码解析之配置解析篇,主要内容是<dubbo:service/>、<dubbo:reference/>、<dubbo:registry/...

2018-12-29 17:22:49

阅读数 161

评论数 4

Spring源码阅读顺序

Spring源码解析之ApplicationContext,主要内容是介绍Spring上下文初始化时的一些主要步骤 Spring源码解析之默认标签的解析,如文章标题,主要内容是<bean/>、&a...

2018-12-25 14:24:15

阅读数 372

评论数 9

Spring boot内嵌tomcat源码解析

阅读须知 版本:2.0.4 文章中使用/* */注释的方法会做深入分析 正文 我们知道,在使用Spring boot搭建web工程时,我们不需要自己搭建一个tomcat服务器,只需要引入spring-boot-starter-web,在应用启动时会自动启动嵌入版的tomcat作为应用服务器,下...

2018-12-15 16:16:32

阅读数 378

评论数 7

策略模式实践

模式简介 策略模式是一种行为型模式,它定义一系列的算法,将每一种算法封装起来并可以相互替换使用,策略模式让算法独立于使用它的客户端应用而独立变化。策略模式适合解决当程序出现多个不同分支,而且每个分支的逻辑还比较复杂的场景。 生产实践 在笔者参与的交易系统中,需要支持多种支付方式,如支付宝、微信、现...

2018-12-06 17:58:28

阅读数 167

评论数 0

RocketMQ整体结构

RocketMQ 结构 概述 Apache RocketMQ是一个分布式消息传递和流平台,具有低延迟,高性能和可靠性,万亿级容量和灵活的可扩展性。它由四部分组成:NameServer、broker、producer 和 consumer。它们中的每一个都可以水平扩展而没有单点故障。 如上图所示。...

2018-12-03 16:20:25

阅读数 98

评论数 2

建造者模式实践

建造者模式是一种常见的设计模式,属于创建型模式,我们常见的工厂、单例、原型、包括《重构与模式》一书中提到的creation method都属于创建型模式。建造者适合用于构建复杂对象,它可以将创建和表示分离,使我们的代码可读性更好,更易于维护。 在我们的实际开发中,经常会构建一些实体对象,比如,在笔...

2018-12-01 16:45:06

阅读数 64

评论数 0

装饰者模式实践

装饰者模式是一个比较常用的模式,它可以在不改变原类文件和不使用继承的情况下动态地扩展一个对象的功能。现在我们遇到这样一个需求,我们要做一个智能货架系统,它可以根据门店的销量、坪效、客单价等等一些数据来展现一个智能的陈列方案,目的是门店可以通过这种陈列方式来提升商品的销量、坪效等指标。 一个货架的品...

2018-11-25 19:13:50

阅读数 1157

评论数 1

CyclicBarrier源码解析

阅读需知 jdk版本:1.8 使用/* */注释的方法会做深入分析 正文 public CyclicBarrier(int parties) { this(parties, null); } /** * @param parties 在栅栏被触发之前必须调用await方法的线程数 ...

2018-11-09 11:42:12

阅读数 334

评论数 0

Spring boot自动配置源码解析

阅读须知 版本:2.0.4 文章中使用/* */注释的方法会做深入分析 正文 自动配置是Spring boot的一大亮点,让我们从Spring繁杂的配置中脱身而出,本篇文章我们就来分析一下Spring boot自动配置的源码。不知道读者是否有注意到,在分析Spring boot启动流程时,我们...

2018-11-07 17:55:51

阅读数 284

评论数 0

Spring boot启动流程源码解析

阅读须知 版本:2.0.4 文章中使用/* */注释的方法会做深入分析 正文 @SpringBootApplication public class BootApplication { public static void main(String[] args) { S...

2018-11-06 17:40:34

阅读数 438

评论数 0

Dubbo源码解析之LoadBalance负载均衡

阅读须知 dubbo版本:2.6.0 spring版本:4.3.8 文章中使用/* */注释的方法会做深入分析 正文

2018-10-24 16:27:44

阅读数 460

评论数 0

Dubbo源码解析之consumer关联provider

阅读须知 dubbo版本:2.6.0 spring版本:4.3.8 文章中使用/* */注释的方法会做深入分析 正文 我们知道,dubbo的生产者和消费者的关系维护在注册中心,所以,消费者关联生产者肯定是需要订阅注册中心的相关生产者信息才能完成,在Dubbo源码解析之registry注册中心这...

2018-10-11 19:47:49

阅读数 379

评论数 0

Dubbo源码解析之consumer调用篇

阅读须知 dubbo版本:2.6.0 spring版本:4.3.8 文章中使用/* */注释的方法会做深入分析 正文

2018-10-11 10:50:00

阅读数 505

评论数 0

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