随笔分类 - 架构
摘要:文章目录 一、总结二、ZooKeeper的核心-ZAB协议2.1 ZAB的作用2.2 ZAB的原理介绍2.2 ZAB的两种模式状态2.3 消息广播的过程2.4 崩溃恢复2.5 ZAB节点状态2.6 Leader选举服务器启动时Leader选举服务运行时Leader选举 2.7 ZAB和Paxos对比
阅读全文
摘要:一、单体架构 1.1 介绍 单体架构在历史进程里,出现时间最早,应用范围最广、使用人数最多、统治历史最长。单体 这个词是从微服务开始流行后,“事后追认”的一种架构。很多微服务的介绍中,将其称之为 **巨石系统 (Monolithic Application) ** 1.2 优点 易于开发调试、测试、
阅读全文
摘要:文章目录 分布式事务一致性和数据一致性的理解一、NWR协议1.1 NWR协议介绍1.2 原理 二、Gossip协议2.1 Gossip 协议介绍2.2 Gossip协议原理2.3 Gossip协议通信方式2.4 Gossip协议优缺点 三、Paxos协议3.1 什么是Paxos协议3.2 Paxos
阅读全文
摘要:文章目录 什么是分布式事物常见的实现分布式事物方法一、 两阶段提交协议 2PC (2 Prepare Commit)1.1 2PC正常提交事物流程1.2 2PC中断回滚事物流程1.3 2RPC的优缺点分析 二、 三阶段提交协议 3PC2.1 CanCommit阶段2.2 PreCommit阶段2.3
阅读全文
摘要:文章目录 一、什么是分布式数据一致性1.1 数据一致性分类1.2 一致性分级 二、CAP定理2.1 CAP定理(CAP theorem)2.2 CAP定理的论证2.3 BASE理论 总结 1、一致性的种类:事务一致性、数据一致性 2、数据一致性程度分级:强一致性、弱一致性、最终一致性 3、CAP定理
阅读全文
摘要:一、分布式集群场景下时钟不同步会有什么问题? 如上面的示意图所示,分布式集群场景下如果各个服务器时间不一致,可能导致同一时间产生的数据,在处理过程中和数据库中,保存成了不同的时间,造成数据混乱。 二、集群时钟同步配置 场景1 每个节点都能连网 思路:每个节点都访问同一个时间服务器来同步自身的时间 操
阅读全文
摘要:文章目录 为什么需要分布式ID?一、分布式ID方案之 UUID(可以用)二、分布式ID方案之 独立数据库自增ID(不推荐)三、分布式ID方案之 雪花算法Snowflake(可以用)3.1 Snowflake介绍3.2 JAVA的snowflake源码 四、分布式id之 Redis的Incr(推荐)五
阅读全文
摘要:文章目录 概要一、哈希算法介绍1.1 哈希思想1.2 Hash函数1.2.1 Hash函数的要求1.2.2 常见Hash函数的设计方法 1.3 解决哈希冲突的办法1.3.1 开放寻址法1.3.2 链表法 二、哈希算法在分布式集群架构中的应用2.1 负载均衡2.1.1 维护路由表实现负载均衡2.1.2
阅读全文
摘要:文章目录 一、为啥需要响应式程序?二、响应式编程思想三、实现响应式编程的探索四、响应式框架历史和现状历史现状 五、响应式编程规范 一、为啥需要响应式程序? 传统命令式编程,在遇到需要需要外部资源的服务时,会使得当前线程进入阻塞等待。例如Tomcat的Thread Pre Request模型、命令式编
阅读全文
摘要:为什么需要消息中间件? 因为现在的分布式服务系统中,由于业务拆分,应用也需要拆分甚至数据都是分库分表的。但是往往完成一个业务处理,往往涉及多个模块之间的协调处理。模块之间、服务与服务之间,以及客户端和服务端之间的通信都变得非常复杂。这时候使用分布式异步通信的模式,引入消息中间件,就可以系统间解耦、这
阅读全文

浙公网安备 33010602011771号