![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
中间件分析
文章平均质量分 90
赵润泽同学
这个作者很懒,什么都没留下…
展开
-
中间件集群之间数据同步和故障转移
一. 数据库之间数据同步mysql 两种集群同步方式:Replication 同步方式特点: 弱一致性、速度快、低价值,适合日志新闻帖子等。PXC 同步方式特点: 强一致性、速度慢、高价值,适合订单、账户、财务等。Replication 介绍:Master 写,slave 读,单项操作。基本流程: sql-thread 可能是多线程。主备切换时,计划外切换先让备库获取中继日志relay-log,选择并设置新主库,查找其他从库上复制事件在新主库上二进制坐标,在新从库上重置复制,按上一步获得的二原创 2022-03-20 20:18:39 · 1844 阅读 · 0 评论 -
QLexpress源码解析
一. 流程分析表达式: 10 * 10 + 1 + 2 * 3 + 5 * 21:整体处理被 ExpressRunner 托管,可以在这个类里开启一些运行时辅助功能,比如 是否使用Cache中的指令集、是否输出详细的执行指令信息 等等,。首先调用这个方法 ExpressRunner#execute(Sting,IExpressContext):Object ,第一个参数是表达式,第二个是上下文。2:然后调用 ExpressRunner#parseInstructionSet(String): Ins原创 2021-08-08 20:25:25 · 1602 阅读 · 1 评论 -
业务、线程、虚拟机、通信框架等对异常的处理
一. 前言异常是开发中,非常常见的。异常在不同的场景中,有不同的作用。本文就聊一聊,在 java 应用、线程、第三方框架等场景中,对异常常见的处理方式。二. 语言场景下的异常首先是超类 java.lang.Throwable ,超类有两种类型的子类,一类是 java.lang.Error ,一类是 java.lang.Exception 。前者是用来描述 java 内部在运行时出现错误或者资源耗尽情况,不应该被 catch 捕获。后者分为两种情况,一种是 java.lang.RuntimeExcept原创 2020-05-26 21:21:51 · 223 阅读 · 0 评论 -
【中间件常用写法】一些设计上的基本常识
前一段时间,尝试过总结中间件的写法,奈何见识太少,总是不能清晰的抽象出来。后来偶然间看到梁飞大佬的博客,读来有醍醐灌顶之感,大佬在九年前就总结出来一套模型了和一些常见的写法示例,非常清晰。在这里放一些大佬的博客链接:一些设计上的基本常识:一些设计上的基本常识。大佬的 核心域、服务域、会话域的划分,和我前一篇博客想表达的一样,只不过我没总结好,不够清晰。还有 api 和 spi 分离,中间件...原创 2020-03-31 20:11:20 · 412 阅读 · 0 评论 -
【中间件常用写法】中间件如何加载和控制类
一. 导读每一个框架都有客户端和服务端,一般客户端只需要引入一个包,然后通过注解自动开启客户端,这是如何左到的?有的框架,比如 Seata 没有引入 spring ,就无法使用 spring 的注解来定义bean,那么它是如何管控实例的?...原创 2019-11-10 20:01:54 · 592 阅读 · 0 评论 -
【中间件常用写法】中间件架构中常用模型详解
一.写在前面源码看的多了,就会感觉到很多架构都有相似的地方,许多操作都有其通用性。就像框架中的一些组件,以及他们承担的责任,都有相似的地方,这篇博客就来分析一下组件中通用类的作用。二.组件中通用类分析首先我们看一下现在很流行的seata框架,它的全局事务的控制是如何做到的:这是seata的整体架构图,细节很多,主要说一下每个Microservice如何管控自己的Branch事务分支并与TC...原创 2019-11-03 14:00:29 · 1315 阅读 · 1 评论