该内容是作者在全球运维技术大会上分享主题中的部分内容。提供给想了解MGR的读者参考! 为了让解析mgr过程变得相对有条理,我们从跟踪一个事务在mgr的执行流程开始。首先从对执行sql的用户线程的解析开始: 在mgr节点中,用户线程的执行流程跟在普通mysql节点的执行流程,几乎是没有区别的。
唯一的区别就是,在事务的binlog提交阶段,增加了一个函数,这个函数的名称叫
原创
2021-03-05 21:06:53
401阅读
注:connect_timeout:默认10秒,The number of seconds that the mysqld sep
原创
2022-09-14 10:11:44
135阅读
;因为使用无参构造时候集合容器为空,所以无任何空位。第一次添加元素 add("a") 第一次添
转载
2017-07-04 11:30:49
557阅读
链接: http://note.youdao.com/noteshare?id=aeb1c7a30c5f4b70e3fff51f28ee5c47 懒得复制到这里了,一开始是在有道云笔记上写的,这里的公式支持又不太好,于是直接给出我有道云笔记的总结链接好了。
原创
2021-09-14 16:16:23
189阅读
1、使用类似动态代理的模式和消息派发中枢模式实现整个架构; 2、使用NSMapTable和NSHashTable进行切面信息的增删查维护;主要用于去重和查看是否存在。 实现方式 消息流 KVOControllerKVOControllerUML observer 调用的方法注册观察者。 FBKVOC
转载
2019-02-25 19:14:00
249阅读
2评论
一 前言 在说HTTPS之前先说说什么是HTTP,HTTP就是我们平时浏览网页时候使用的一种协议。HTTP协议传输的数据都是未加密的,也就是明文的,因此使用HTTP协议传输隐私信息非常不安全。为了保证这些隐私数据能加密传输,于是网景公司设计了SSL(Secure Sockets Layer)协议用于对HTTP协议传输的数据进行加密,从而就诞生了HTTPS。SSL目前的版本是3.0,被IETF(I
转载
2017-03-04 10:18:00
195阅读
2评论
netty主要采用的是reactor模式(事件)驱动模型,以下主要对reactor进行总结: C/S架构可以抽象为如下模型: C就是Client(客户端),上面的B是Browser(浏览器) S就是Server(服务器):服务器管理某种资源,并且通过操作这种资源来为它的客户端提供某种服务 C/S架构
转载
2018-12-28 14:31:00
198阅读
2评论
09、原理解析1、Profile功能为了方便多环境适配,springboot简化了profile功能。1、application-profile功能默认配置文件 application.yaml;任何时候都会加载指定环境配置文件 application-{env}.yaml激活指定环境配置文件激活命令行激活:java -jar xxx.jar –spring.profiles.active=pro
原创
2022-07-07 14:52:46
56阅读
1. HashMap的数据结构数据结构中有数组和链表来实现对数据的存储,但这两者基故空间复杂度很小,但时间复杂度很大,达O(N)。链表的特点是:寻址困难
原创
2022-12-14 19:44:41
71阅读
「这是我参与2022首次更文挑战的第20天,活动详情查看:2022首次更文挑战」。 ReentrantLock 源码解析 ReentrantLock 的核心是通过 AQS 实现的,具备了 AQS 的特
原创
2022-04-12 15:18:10
270阅读
前言
本文主要会介绍笔者在学习Flannel时所总结的知识点,其中会涉及到Flannel的架构、各种Backend的实现原理等方面的相关内容。
笔者也会将自己的理解在文中进行阐述,这也算是在和大家交流心得的一个过程。若文中有错误的理解和概念,请大家及时纠正;吸纳大家的建议,对于我来说也是很重要的学习过程之一。
1.概念
Flannel是CoreOS开发的容器网络解决方案。
在Flannel中,每
原创
精选
2024-02-14 18:18:57
480阅读
LVS简介LVS是Linux Virtual Server的简写,即Linux虚拟服务器,是一个虚拟的服务器集群系统。该项目由章文嵩博士成立,是中国国内最早出现的自由软件项目之一。 使用LVS技术要达到的目标是:通过LVS提供的负载均衡技术和Linux操作系统实现一个高性能、高可用的服务器群集,它具有良好可靠性、可扩展性和可操作性。从而
原创
2017-09-28 09:46:28
2865阅读
点赞
在AQS中,维护着一个表示共享资源加锁情况的变量volatile int state,以及FIFO的线程阻塞队列(称为CLH队列)。
当多个线程并发访问共享资源时,如果共享资源已经被某个线程加入了锁,那么其他线程在访问此共享资源时就会加入CLH队列中。
state表示共享资源被线程加锁的次数。例如:当state的值为1,就表示共享资源被某个线程加了一次锁,当state的值为0时,就表示共享资源没有
原创
2021-07-25 18:19:43
408阅读
首先为什么需要aidl?下面是不需要aidl的binder的IPC通讯过程,表面上结构很简单,但是有个困难就是,客户端和服务端进行通讯,你得先将你的通讯请求转换成序列化的数据,然后调用transact()函数发送给服务端,而且还得制定一个小协议,参数谁先谁后,服务端和客户端都必须一致,否则就会出错。...
原创
2021-08-11 11:45:54
1395阅读
一、为什么需要消息系统1、解耦:允许你独立的扩展或修改两边的处理过程,只要确保它们遵守同样的接口约束。2、冗余:消息队列把数据进行持久化直到它们已经被完全处理,通过这一方式规避了数据丢失风险。许多消息队列所采用的"插入获取删除"范式中,在把一个消息从队列中删除之前,需要你的处理系统明确的指出该消息已经被处理完毕,从而确保你的数据被安全的保存直到你使用完毕。3、扩展性:因为消息队列解耦了你的处理过程
原创
2022-10-12 18:08:06
207阅读