分布式ID生成方式 发表于 2021-07-22 | 分类于 分布式 | 一、为什么要用分布式ID?在说分布式ID的具体实现之前,我们来简单分析一下为什么用分布式ID?分布式ID应该满足哪些特征? 1、什么是分布式ID?拿MySQL数据库举个栗子: 在我们业务数据量不大的时候,单库单表完全可以支撑现有业务,数据再大一点搞个MySQL主从同步读写分离也能对付。 但随着数据日 ... 阅读全文 »
分布式一致性协议之2PC和3PC 发表于 2021-07-22 | 分类于 分布式 | 由于分布式系统的各个服务可能分布在不同的节点上,如果各节点直接没有相互的通信获取其他节点状态,那么各个节点是无法知道其他节点的任务处理结果的。 如果在分布式系统中发起一个事务,该事务涉及多个不同节点,那么为了保证事务 ACID 特性,就需要引入一个协调者来统一调度事务涉及的多个节点,被调度的节点称为 ... 阅读全文 »
拜占庭将军问题 发表于 2021-07-20 | 一个数据在一个节点需要同步到另外一个节点的过程中,在未完成同步的时候,会出现数据不一致的情况,所以此时必然存在分区容错性(Partition tolerance)。分布式系统只能从一致性(Consistency)或可用性(Availability)之间去选择。 CAP讲的是分布式一致性,而这次我们来 ... 阅读全文 »
复盘 发表于 2021-06-24 | 分类于 工程 | 阶段 步骤 需要解决的问题 常用工具 准备阶段 策划团队复盘方案 对什么进行复盘?达到什么目标?涉及到哪些工作?那些人需要参加? 列清单检查 组织团队复盘会议 复盘会议的时间、地点、以何种形式召开?需要多长时间?会议的议程和分工? 提前准备 那些人需要做哪些准备?提供哪些 ... 阅读全文 »
mysql--redo log与binlog 发表于 2021-05-16 | 之前我们了解了一条查询语句的执行流程,并介绍了执行过程中涉及的处理模块。一条查询语句的执行过程一般是经过连接器、分析器、优化器、执行器等功能模块,最后到达存储引擎。 那么,一条 SQL 更新语句的执行流程又是怎样的呢? 首先我们创建一个表 user_info,主键为 id,创建语句如下: 12345 ... 阅读全文 »