03 2020 档案

摘要:一、Broker 介绍 二、消息的存储结构 RocketMQ 的消息存储由 ConsumeQueue 和 CommitLog 配合完成。 2.1 ConsumeQueue 2.2 CommitLog 2.3 存储顺序 三、高可用机制 Broker 集群通过 Master 和 Slave 的配合达到高 阅读全文
posted @ 2020-03-28 10:33 MarkLogZhu 阅读(1390) 评论(0) 推荐(0)
摘要:一、NameSever介绍 1.1 NameSever是什么 NameServer 的主要功能是为整个 MQ 集群提供服务协调与治理,具体就是记录维护 Topic 、 Broker 的信息,及监控 Broker 的运行状态,为 client 提供路由能力。 NameServer 之间没有信息同步操作 阅读全文
posted @ 2020-03-28 09:38 MarkLogZhu 阅读(788) 评论(0) 推荐(0)
摘要:一、Consumer 介绍 1.1 核心参数 二、消费模式 2.1 集群模式 2.2 广播模式 三、Offset 介绍 3.1 Offset 是什么 3.2 Offset 类结构 从类结构可以看出 Offset 分为本地文件类型和远程文件类型。 3.2 消费模式采用的 Offset 类型 3.3 O 阅读全文
posted @ 2020-03-22 13:20 MarkLogZhu 阅读(2341) 评论(0) 推荐(2)
摘要:一、Producer 介绍 1.1 消息发送的步骤 1) 设置 Producer 的 GroupName(Producer Group是一类 Producer 的集合); 2) 设置 InstanceName,当一个 JVM 需要启动多个 Producer 时,需要指定不同的 InstanceNam 阅读全文
posted @ 2020-03-21 15:36 MarkLogZhu 阅读(2806) 评论(0) 推荐(0)
摘要:在之前我们是使用 RocketMQ 自带的程序来验证功能,今天我们自己实现下消息的生产和消费。 一、简单使用 1.1 引入依赖: 1.2 新建配置类: 1.3 新建消费者: 1.5 运行生产者类,查看控制台输出: 1.6 运行消费者,查看控制台输出: 阅读全文
posted @ 2020-03-21 15:34 MarkLogZhu 阅读(781) 评论(0) 推荐(0)
摘要:一、环境信息 centos7 jdk 8 rocketmq 4.7.0 二、安装 进入软件安装包目录 下载 "RocketMQ" 的 Binary 版安装包,也可以上传自己编译的 解压文件并重命名目录 将目录移动 /usr/local 目录下 查看目录包含内容 LICENSE、NOTICE、READ 阅读全文
posted @ 2020-03-21 09:38 MarkLogZhu 阅读(1132) 评论(0) 推荐(0)
摘要:一、RocketMQ 介绍 RocketMQ 是一款分布式、队列模型的消息中间件,由阿里巴巴研发。 底层采用 Netty NIOl 框架实现数据通信。 3.X 版本弃用 Zookeeper ,内部使用更轻量级的 NameServer 进行网络路由,提供了服务性能,并支持消息失败重试机制。 支持集群模 阅读全文
posted @ 2020-03-21 09:35 MarkLogZhu 阅读(262) 评论(0) 推荐(0)
摘要:一、异常报告器介绍 1.1 作用 收集错误信息,用于向用户报告错误原因。 1.2 接口定义 二、源码解析 2.1 run 初始化 Spring.facories 中对 SpringBootExceptionReporter 的配置如下: 2.2 handleRunFailure 2.2.1 查看 h 阅读全文
posted @ 2020-03-18 15:31 MarkLogZhu 阅读(1213) 评论(0) 推荐(0)
摘要:一、Profile 介绍 1.1 Profile 的作用 在日常工作中,项目会处于不同的环境下,如开发、测试、生产等环境。针对不同的环境,各种配置信息也会不同,针对这种情况 Spring 提供了 Profile 机制,实现环境的切换。 1.2激活 Profile 方式 Spring 激活 Profi 阅读全文
posted @ 2020-03-18 13:41 MarkLogZhu 阅读(702) 评论(0) 推荐(0)
摘要:SpringBoot 配置 一、属性配置方式 新建获取属性值的启动加载器,用来验证设置的属性值: 1.1 硬编码配置 启动项目,查看控制台输出: 1.2 @PropertySource 注解绑定配置 在 resources 目录下新建 default.properties 文件: 在启动类上新增 @ 阅读全文
posted @ 2020-03-18 10:06 MarkLogZhu 阅读(862) 评论(0) 推荐(0)
摘要:一、什么是启动加载器? 在项目启动的时候做一些初始化工作。 二、启动类加载器实践 2.1 实现 CommandLineRunner 接口 2.2 实现 ApplicationRunner 接口 启动项目,观察控制台输出: 可以看到默认实现 ApplicationRunner 接口比 CommandL 阅读全文
posted @ 2020-03-17 15:11 MarkLogZhu 阅读(1136) 评论(0) 推荐(0)
摘要:一、refresh 方法 SpringBoot 加载 bean 操作主要在 AbstractApplicationContext 类 refresh 方法里,它的流程图如下: 代码如下: 二、Bean实例化流程 bean 实例化流程流程是在 onRefresh 方法的 finishBeanFacto 阅读全文
posted @ 2020-03-17 14:16 MarkLogZhu 阅读(1598) 评论(0) 推荐(0)
摘要:一、Banner 介绍 1.1 Banner 是什么? java . ____ _ __ _ _ /\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \ ( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \ \\/ ___)| |_)| | | | 阅读全文
posted @ 2020-03-17 08:32 MarkLogZhu 阅读(1292) 评论(0) 推荐(0)
摘要:一、监听器模式介绍 将一个监听器(listener)与特定的控件(如按钮等)绑定起来,当发生用户点击等事件(Event)时,调用监听器的处理方法,从而响应用户的动作,就叫做事件/监听器模式。 从上面的语句中,我们可以看出监听器模式有三个要素: 事件源 事件对象 监听器 二、自定义监听器事件 创建天气 阅读全文
posted @ 2020-03-16 15:33 MarkLogZhu 阅读(5312) 评论(0) 推荐(0)
摘要:![](https://images.cnblogs.com/cnblogs_com/markLogZhu/1532657/o_200314075607SpringBoot%E5%90%AF%E5%8A%A8%E6%B5%81%E7%A8%8B.jpg) 阅读全文
posted @ 2020-03-15 13:54 MarkLogZhu 阅读(1513) 评论(0) 推荐(0)
摘要:一、ApplicationContextInitializer 介绍 1.1 作用 ApplicationContextInitializer 接口用于在 Spring 容器刷新之前执行的一个回调函数,通常用于向 SpringBoot 容器中注入属性。 1.2 内置实现类 DelegatingApp 阅读全文
posted @ 2020-03-15 13:51 MarkLogZhu 阅读(3833) 评论(0) 推荐(0)
摘要:一、SpringFactoriesLoader 介绍 1.1 SpringFactoriesLoader 简介 SpringFactoriesLoader 工厂加载机制是 Spring 内部提供的一个约定俗成的加载方式,与 java spi 类似,只需要在模块的 META INF/spring.fa 阅读全文
posted @ 2020-03-15 10:59 MarkLogZhu 阅读(1291) 评论(0) 推荐(0)
摘要:一、StopWatch 简介 1.1 StopWatch 是什么? StopWatch 是 org.springframework.util 包下的一个工具类,通过它可方便的对程序执行时间进行统计。 1.2 简单使用 控制台输出: 二、StopWatch 源码解析 2.1 初始化 StopWatch 阅读全文
posted @ 2020-03-14 16:32 MarkLogZhu 阅读(614) 评论(0) 推荐(0)
摘要:所谓工欲善其事必先利其器,今天就介绍下笔者日常使用的一些小工具 Markdown 编辑器 使用 Markdown 的优点这里就不赘述,不了解的朋友可以看下这里 "为什么我们要学习 Markdown 的三个理由" "Markdown 语法说明(简体中文版)" 也可以先使用在线 Markdown 编辑器 阅读全文
posted @ 2020-03-13 09:30 MarkLogZhu 阅读(290) 评论(0) 推荐(0)
摘要:- src - it 集成测试模块 - java 集成测试代码 - resources 集成测试配置文件 - test 单元测试模块 - java 单元测试代码 - main 业务代码 - java - interfaces 用户接口层 - facade 提供较粗粒度的调用接口,将用户请求委托给一个 阅读全文
posted @ 2020-03-11 15:55 MarkLogZhu 阅读(2824) 评论(0) 推荐(0)