Curve元数据节点高可用Observe的流程 4. MDS使用election模块的功能进行选主 4.1 Curve中MDS的选举过程 4.2 图示说明选举流程 4.2.1 正常流程 4.2.2 异常情况1:MDS1退出,可以正常处理 4.2.3 异常情况2:Etcd集群的leader发生重新选举,MDS1未受影响,可以正常处理 4.2.4 异常情况3:Etcd的leader发生重新选举,MDS1受到影响退出,不一定可以正常处理。 2 GetTimeout < ElectionTime 4.2.4.3 MDS1、MDS2、MDS3的租约全部过期 4.2.4.4 总结 4.2.5 异常情况四: Etcd集群与MDS1(当前leader)出现网络分区 4.2.5.1 事件一先发生 4.2.5.2 事件二先发生 4.2.6 异常情况4:Etcd集群的follower节点异常 4.2.7 各情况汇总 1. 需求 mds是元 考虑当前系统中mds有两个外部依赖模块,一是mysql, 用于存储集群拓扑的相关信息;二是etcd,用于存储文件的元数据信息。而etcd可以用于实现mds高可用,没必要引入其他组件。 使用etcd实现元数据节点的leader主要依赖于它的两个核心机制: TTL和CAS。TTL(time to live)指的是给一个key设置一个有效期,到期后key会被自动删掉。这在很多分布式锁的实现上都会用到,可以保证锁的实时性和有效性。CAS(Atomic0 码力 | 30 页 | 2.42 MB | 6 月前3
高可用与一致性:构建强一致性分布式数据库 TiDB-沈泰宁Machine A = 1 B = 2 Log Raft Module •Leader election •Voting for leader •Network isolation/node failure tiggers election •Log replication •Leader handles client requests, append logs •Replicate •Replicate logs to followers •Constraints •Quorum: log replication, leader election •Up to date: leader election Raft: Key Points •Lazy Peer •Cross DC, cross regions deployment •Learner •Cross Raft: New Features Raft: Lazy Peer 3-DC in 2 regions deployment Raft: Learner Follower Follower Leader Learner Replace nodes? Node2 Node1 Node3 Node2 Node1 Node3 Node4 Node2 Node1 Node4 Raft:0 码力 | 45 页 | 4.63 MB | 1 年前3
FISCO BCOS 2.1.0 中文文档,进行验证并保存,可以 做为数据服务者提供服务。 共识算法 共识算法需要解决的几个核心问题是: 1. 选出在整个系统中具有记账权的角色,做为leader发起一次记账。 2. 参与者采用不可否认和不能篡改的算法,进行多层面验证后,采纳 Leader给出的记账。 3. 通过数据同步和分布式一致性协作,保证所有参与者最终收到的结果都 是一致的,无错的。 区块链领域常见的共识算法有公链常用的工作量证明(Proof 。FISCO BCOS通过genesis的 [tx].gas_limit来配置交易最大gas限制,默认是300000000,链初始化完毕 后,可通过控制台指令动态调整gas限制。 ; leader节点的ID列表 node.0=123d24a998b54b31f7602972b83d899b5176add03369395e53a5f60c303acb 719ec0718ef1ed 可通过tail -f node*/log/* | grep "++"查看各节点是否正常。 重要 节点正常共识打印 +++ 日志, +++ 日志字段含义: g::群组ID blkNum:Leader节点产生的新区块高度; tx: 新区块中包含的交易数目; nodeIdx: 本节点索引; hash: 共识节点产生的最新区块哈希。 0:00 /home/ubuntu16/fisco/nodes/1270 码力 | 1058 页 | 740.85 KB | 1 年前3
FISCO BCOS 2.3.0 中文文档,进行验证并保存,可以 做为数据服务者提供服务。 共识算法 共识算法需要解决的几个核心问题是: 1. 选出在整个系统中具有记账权的角色,做为leader发起一次记账。 2. 参与者采用不可否认和不能篡改的算法,进行多层面验证后,采纳 Leader给出的记账。 3. 通过数据同步和分布式一致性协作,保证所有参与者最终收到的结果都 是一致的,无错的。 区块链领域常见的共识算法有公链常用的工作量证明(Proof 对其他共识算法不生效 epoch_sealer_num=4 ; 一个共识周期出块数,RPBFT配置项,对其他共识算法不生效 epoch_block_num=1000 ; leader节点的ID列表 node.0=123d24a998b54b31f7602972b83d899b5176add03369395e53a5f60c303acb 719ec0718ef1ed Prepare包结构优化 考虑到PBFT算法中,Leader广播的Prepare包内区块的交易有极大概率在其他 共识节点的交易池中命中,为了节省网络带宽,FISCO BCOS v2.2.0优化了 Prepare包结构:Prepare包内的区块仅包含交易哈希列表,其他共识节点收到 Prepare包后,优先从本地交易池获取命中的交易,并向Leader请求缺失的交 易,详细设计请参考这里。可通过group0 码力 | 1227 页 | 10.79 MB | 1 年前3
FISCO BCOS 2.2.0 中文文档,进行验证并保存,可以 做为数据服务者提供服务。 共识算法 共识算法需要解决的几个核心问题是: 1. 选出在整个系统中具有记账权的角色,做为leader发起一次记账。 2. 参与者采用不可否认和不能篡改的算法,进行多层面验证后,采纳 Leader给出的记账。 3. 通过数据同步和分布式一致性协作,保证所有参与者最终收到的结果都 是一致的,无错的。 区块链领域常见的共识算法有公链常用的工作量证明(Proof ft)和 Raft(consensus_type=raft) consensus_type=pbft ; 单个块最大交易数 max_trans_num=1000 ; leader节点的ID列表 node.0=123d24a998b54b31f7602972b83d899b5176add03369395e53a5f60c303acb 719ec0718ef1ed Prepare包结构优化 考虑到PBFT算法中,Leader广播的Prepare包内区块的交易有极大概率在其他 共识节点的交易池中命中,为了节省网络带宽,FISCO BCOS v2.2.0优化了 Prepare包结构:Prepare包内的区块仅包含交易哈希列表,其他共识节点收到 Prepare包后,优先从本地交易池获取命中的交易,并向Leader请求缺失的交 易,详细设计请参考这里。可通过group0 码力 | 1156 页 | 10.03 MB | 1 年前3
FISCO BCOS 2.4.0 中文文档,进行验证并保存,可以 做为数据服务者提供服务。 共识算法 共识算法需要解决的几个核心问题是: 1. 选出在整个系统中具有记账权的角色,做为leader发起一次记账。 2. 参与者采用不可否认和不能篡改的算法,进行多层面验证后,采纳 Leader给出的记账。 3. 通过数据同步和分布式一致性协作,保证所有参与者最终收到的结果都 是一致的,无错的。 区块链领域常见的共识算法有公链常用的工作量证明(Proof 对其他共识算法不生效 epoch_sealer_num=4 ; 一个共识周期出块数,rPBFT配置项,对其他共识算法不生效 epoch_block_num=1000 ; leader节点的ID列表 node.0=123d24a998b54b31f7602972b83d899b5176add03369395e53a5f60c303acb 719ec0718ef1ed 对其他共识算法不生效 epoch_sealer_num=4 ; 一个共识周期出块数,rPBFT配置项,对其他共识算法不生效 epoch_block_num=1000 ; leader节点的ID列表 node.0=123d24a998b54b31f7602972b83d899b5176add03369395e53a5f60c303acb 719ec0718ef1ed0 码力 | 1314 页 | 11.21 MB | 1 年前3
FISCO BCOS 2.5.0 中文文档优化MHD和交易池模块的线程数,减少内存占用 优化MySQL存储适配器实现,优化ZdbStorage的代码实现 修复 修复同一个区块内修改Entry,后续交易查询该Entry结果出错的问题 修复raft共识下,非leader节点交易池中的交易不能被打包的问题 修复CachedStorage的一个死锁问题 修复开启Binlog情况下,极端情况下,从Binlog恢复出错的问题 修复特定情况下节点重启后Viewchange被拒,无法快速恢复视图的问题 ,进行验证并保存,可以 做为数据服务者提供服务。 共识算法 共识算法需要解决的几个核心问题是: 1. 选出在整个系统中具有记账权的角色,做为leader发起一次记账。 2. 参与者采用不可否认和不能篡改的算法,进行多层面验证后,采纳 Leader给出的记账。 3. 通过数据同步和分布式一致性协作,保证所有参与者最终收到的结果都 是一致的,无错的。 区块链领域常见的共识算法有公链常用的工作量证明(Proof state将交易执行结果存储在MPT树中,效率较低,但包含完整的历史信 息。 ; 一个共识周期出块数,rPBFT配置项,对其他共识算法不生效 epoch_block_num=1000 ; leader节点的ID列表 node.0=123d24a998b54b31f7602972b83d899b5176add03369395e53a5f60c303acb 719ec0718ef1ed0 码力 | 1456 页 | 13.35 MB | 1 年前3
TiDB v5.1 中文手册· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · 2188 15.2.1 Leader/Follower/Learner· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · rate-limit �→ .max-bytes �→ -per-sec 默 认值为 “0MB”。 TiKV 配置文件 resolved-ts. �→ enable 新增 为所有 Region leader 维护 resolved-ts, 默认值为 true。 TiKV 配置文件 resolved-ts. �→ advance-ts �→ -interval 新增 推进 resolved-ts 直接读取本地副本数据,降低读取延迟,提升查询性能 用户文档,#21094 • 默认开启 Hibernate Region 特性。 如果 Region 长时间处于非活跃状态,即被自动设置为静默状态,可以降低 Leader 和 Follower 之间心跳信 息的系统开销。 用户文档,#10266 2.2.2.4 稳定性 • TiCDC 复制稳定性问题解决 – 改善 TiCDC 内存使用,避免在以下场景出现0 码力 | 2189 页 | 47.96 MB | 1 年前3
TiDB v7.1 中文手册· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · 4366 17.6.1 Leader/Follower/Learner· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · 源的 TiKV 节点 读取副本,而无需在热点 TiKV 节点排队等待。你可以通过tidb_load_based_replica_read_threshold 系 统变量控制读请求的排队长度。当 leader 节点的预估排队时间超过该阈值时,TiDB 会优先从 follower 节 点读取数据。在读热点的情况下,与不打散读热点相比,该功能可提高读取吞吐量 70% ~ 200%。 更多信息,请参考用户文档。 时,热点调度器对不稳定负载所在的 Region 进行频 繁调度 #6297 @bufferflies – 新增 leader 健康检查机制,当 etcd leader 所在的 PD server 无法当选 leader 时,主动切换 etcd leader 来 保证 PD leader 可用 #6403 @nolouch 57 • TiFlash – 提升 TiFlash 在存算分离架构下的性能和稳定性0 码力 | 4369 页 | 98.92 MB | 1 年前3
TiDB v5.2 中文手册· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · 2258 15.2.1 Leader/Follower/Learner· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · TiKV scheduler 层进行流控而不是在 RocksDB 层进行流控, 避免 RocksDB write stall 造成的 raftstore 卡顿并造成 Raft 选举超时导致发生节点 leader 迁移的问题。 – 改善流控算法,有效降低大写入压力下导致 QPS 下降的问题 用户文档,#10137 • 自动检测并恢复集群中单个 TiKV 变慢带来的影响 在 TiKV 中引入了慢节点检测机制,通过检测 的快慢来计算出一个分数,并通过 Store Heartbeat 上报给 PD。并且在 PD 上增加了 evict-slow-store-scheduler 调度器,能够自动驱逐单个变慢的 TiKV 节 点上的 Leader,以降低其对整个集群性能的影响。同时,还增加了慢节点相关的报警项,帮助用户快速 发现并处理问题。 用户文档,#10539 2.2.2.4 数据迁移 • 简化 Data Migration (DM)0 码力 | 2259 页 | 48.16 MB | 1 年前3
共 128 条
- 1
- 2
- 3
- 4
- 5
- 6
- 13













