摘要: 前言: 要了解rocketMq 需要知道 数据在 rocketMq 中 是如何进行传输,在底层的结构到底是一个什么亚子,这个需要我们对Netty 对字符编解码有一些了解。 开始: 我们从生产者发送消息,broker 接收消息 为例,来开展底层消息结构。 消息发送流程: 1. 如下是一段生产者发送消息 阅读全文
posted @ 2020-06-13 21:47 iscys 阅读(951) 评论(0) 推荐(0) 编辑
摘要: 把自己知道的小知识点全部记录,😄 BeanDefinitionRegistryPostProcessor 接口属于Beanddefination 装配定义的范畴,此时bean 并没有初始化 BeanPostProcessor属于be an 实例化修改的范畴,be an 已经进行实例化,只不过我们可 阅读全文
posted @ 2019-03-09 20:20 iscys 阅读(778) 评论(0) 推荐(0) 编辑
摘要: 带着这几个问题去分析SpringBoot 初始化以及扩展机制实现 1.容器何时被创建,并默认配置了什么? 2.Spring 容器依赖于哪个后置处理器进行bean 容器的装配? 3.Spring 如何进行第三方的扩展包括@import注解 DeferredImportSelector 接口 以及 Im 阅读全文
posted @ 2018-11-14 23:46 iscys 阅读(509) 评论(0) 推荐(0) 编辑
摘要: (1),关于 LinkedHashMap TreeMap HashMap 之间的区别: HashMap 是无序的,LinkedHashMap 由于内部维护了一个记录的链表,数据操作的前后顺序都会在链表上下节点保存着; 而TreeMap 内部的数据是有序的 分析如下: 1.LinkedHashMap 阅读全文
posted @ 2018-10-28 13:40 iscys 阅读(252) 评论(0) 推荐(0) 编辑
摘要: 事务: ACID 隔离级别: 查看mysql 隔离级别: show global variables like '%isolation%'; 设置mysql 隔离级别: set global tx_isolation ='REPEATABLE-READ'; 四种隔离级别: 1.未提交读:事务中读修改 阅读全文
posted @ 2018-10-16 00:53 iscys 阅读(173) 评论(0) 推荐(0) 编辑
摘要: 记录一下java 编程工作学习中常用的英语汇总 in other words: 换句话说 dangle :悬挂 separated:分开的 distinct:明显的,独特的 actual :实际的 inject:注射,注入 persistent :持久的 determine :决定,下决心,确定 w 阅读全文
posted @ 2018-09-08 22:33 iscys 阅读(659) 评论(0) 推荐(0) 编辑
摘要: 表结构: @startuml class table_name_cys_plant_uml\n(table_name)<< (T,pink) >> { **id** <color:#4169E1>BIGINT(20)</color> <color:#8FBC8F>主键id</color> table 阅读全文
posted @ 2020-12-31 14:41 iscys 阅读(298) 评论(0) 推荐(0) 编辑
摘要: 名词: commitLog : 消息存储的地方,持久化到磁盘中,保存着生产者发送的完整消息。 consumerqueue: 逻辑消费队列,每一个队列中维护着commitLog 文件中的消息偏移量进行消费。 index: 索引文件。 初始化: 在Broker 启动的时候,org.apache.rock 阅读全文
posted @ 2020-06-26 20:58 iscys 阅读(235) 评论(0) 推荐(0) 编辑
摘要: 结构: AutowiredAnnotationBeanPostProcessor 类组织结构: 从类结构可以得知AutowiredAnnotationBeanPostProcessor 依赖的顶层接口为Ordered BeanPostProcessor Aware 这3个接口。 我们依次看一下这3个 阅读全文
posted @ 2020-06-20 22:33 iscys 阅读(1095) 评论(0) 推荐(0) 编辑
摘要: 阅读全文
posted @ 2020-06-17 00:35 iscys 阅读(125) 评论(0) 推荐(0) 编辑
摘要: 前言: RocketMq producer 在发送一条消息时候,从 producer --nameSrv -- Broker 中间经过了什么样子的数据交互 开始: 如下是 Producer 发送消息的一个demo例子: //1. 初始化 mq producer DefaultMQProducer m 阅读全文
posted @ 2020-06-16 23:37 iscys 阅读(758) 评论(0) 推荐(0) 编辑
摘要: 启动源: nameServer 启动是使用 org.apache.rocketmq.namesrv.NamesrvStartup main 方法启动的,脚手架这里就不多说了。 配置文件的配置信息请看这两个配置类的字段: org.apache.rocketmq.remoting.netty.Netty 阅读全文
posted @ 2020-06-14 10:55 iscys 阅读(1206) 评论(0) 推荐(0) 编辑
摘要: 启动源: RocketMq Broker 启动 从 rocketmq broker 启动mqbroker 启动脚本可以得知,最终运行的是 BrokerStartup 的main 方法,并将脚本参数传递。 export ROCKETMQ_HOME //运行的启动脚本 $@ 表示附加的所有参数信息传递给 阅读全文
posted @ 2020-06-14 10:54 iscys 阅读(1570) 评论(0) 推荐(0) 编辑
摘要: 分布式事务所面临的问题 即ACID:Atomicity、Consistency、Isolation、Durability 原子性:整个事务中的所有操作,要么全部完成,要么全部不完成,不可能停滞在中间某个环节。事务在执行过程中发生错误,会被回滚(Rollback)到事务开始前的状态,就像这个事务从来没 阅读全文
posted @ 2020-06-09 19:11 iscys 阅读(191) 评论(0) 推荐(0) 编辑
摘要: FROM 5ceee9310a16RUN echo "start install redis ..."RUN cd /tmpRUN wget http://download.redis.io/releases/redis-4.0.9.tar.gz \&& tar -zxvf redis-4.0.9. 阅读全文
posted @ 2020-06-06 12:22 iscys 阅读(264) 评论(0) 推荐(0) 编辑