ShardingSphere 高可用功能详解 & 实战演练-赵锦超ShardingSphere 高可用功能详解 & 实操演练 赵锦超 2022.08.06 01 赵锦超 Apache ShardingSphere Committer SphereEx 研发工程师 o 从事过电商、金融行业,热爱开源 o 目前专注于 Apache ShardingSphere 高可用 & 分布式治理的相关研发工作 02 Apache ShardingSphere 高可用介绍 Apache ShardingSphere 高可用源码解析 Apache ShardingSphere HA & MySQL MGR 实战演练 目录 01 03 Apache ShardingSphere 高可用介绍 ShardingSphere-Proxy 高可用 Apache ShardingSphere 高可用介绍 Apache ShardingSphere 本身不提供数据库高可用的能力,它通过第三方提供的高可用方案感知 方提供的高可用方案感知 数据库主从关系的切换。Apache ShardingSphere 提供数据库发现的能力,自动感知数据库主从 关系,并修正计算节点对数据库的连接。 目前支持的高可用方案 : • MySQL MGR 单主模式 • MySQL 主从复制模式 • openGauss 主从复制模式。 Apache ShardingSphere 高可用介绍 Apache ShardingSphere0 码力 | 19 页 | 2.12 MB | 1 年前3
Apache ShardingSphere 中文文档 5.2.03.3.7 使用限制 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 3.4 高可用 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 3.4.1 35 3.4.6 核心概念 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 高可用类型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 动态读写分离 . . . . . 290 已知实现 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 291 5.9 高可用 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 292 5.90 码力 | 449 页 | 5.85 MB | 1 年前3
Apache ShardingSphere 中文文档 5.1.1iii 不支持项 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 4.6 高可用 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 4.6.1 53 4.6.4 核心概念 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 高可用类型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 动态读写分离 . . . . . 6.8.2 ReplicaLoadBalanceAlgorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . 216 6.9 高可用 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216 6.90 码力 | 409 页 | 4.47 MB | 1 年前3
Apache ShardingSphere 中文文档 5.1.0iii 不支持项 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 4.6 高可用 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 4.6.1 53 4.6.4 核心概念 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 高可用类型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 动态读写分离 . . . . . 6.8.2 ReplicaLoadBalanceAlgorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . 211 6.9 高可用 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211 6.90 码力 | 406 页 | 4.40 MB | 1 年前3
Apache ShardingSphere 中文文档 5.1.253 不支持项 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 4.6 高可用 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 4.6.1 54 4.6.4 核心概念 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 高可用类型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 动态读写分离 . . . . . 6.8.2 ReplicaLoadBalanceAlgorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . 227 6.9 高可用 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 228 6.90 码力 | 446 页 | 4.67 MB | 1 年前3
Apache ShardingSphere ElasticJob 中文文档 2023 年 11 月 01 日. 8 5.2.2 资源最大限度利用 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 5.2.3 高可用 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 5.2.4 实现原理 . . 于面向业务编码设计;同时,它也能够解放运维工程师,使他们不必再担心任务的可用性和相关管理需 求,只通过轻松的增加服务节点即可达到自动化运维的目的。 ElasticJob 定位为轻量级无中心化解决方案,使用 jar 的形式提供分布式任务的协调服务。 2 2 功能列表 • 弹性调度 – 支持任务在分布式场景下的分片和高可用 – 能够水平扩展任务的吞吐量和执行效率 – 任务处理能力随资源配备弹性伸缩 1,2,3,4; 服务器 B = 5,6,7,8,9。在不丢失分片 项的情况下,最大限度的利用现有资源提高吞吐量。 5.2.3 高可用 当作业服务器在运行中宕机时,注册中心同样会通过临时节点感知,并将在下次运行时将分片转移至仍 存活的服务器,以达到作业高可用的效果。本次由于服务器宕机而未执行完的作业,则可以通过失效转 移的方式继续执行。如下图所示。 5.2. 弹性调度 9 Apache0 码力 | 98 页 | 1.97 MB | 1 年前3
Apache ShardingSphere 中文文档 5.0.0异构数据库支持 影子库 读写分离 行级权限(TODO) SQL 方 言 转 换 (TODO) 可观测性 分布式事务 SQL 审计(TODO) 弹性伸缩 SQL 防 火 墙 (TODO) 高可用 1.2. 解决方案 5 Apache ShardingSphere document, v5.0.0 1.3 线路规划 1.3. 线路规划 6 2 快速入门 本章节以尽量短的时间,为使用者提供最简单的 ShardingSphereDataSourceFactory 工 厂 和 规 则 配 置 对 象 获 取 ShardingSphereDataSource。该对象实现自 JDBC 的标准 DataSource 接口,可用于原生 JDBC 开发,或使用 JPA, MyBatis 等 ORM 类库。 DataSource dataSource = ShardingSphereDataSourceFactory. 的将开源社区的活力激发出来,也能够保障项目的质量。 Apache ShardingSphere 5.x 版本开始致力于可插拔架构,项目的功能组件能够灵活的以可插拔的方式进 行扩展。目前,数据分片、读写分离、数据库高可用、数据加密、影子库压测等功能,以及对 MySQL、Post‐ greSQL、SQLServer、Oracle 等 SQL 与协议的支持,均通过插件的方式织入项目。Apache ShardingSphere0 码力 | 385 页 | 4.26 MB | 1 年前3
Apache ShardingSphere 中文文档 5.0.0-alphaShardingSphereDataSourceFactory 工 厂 和 规 则 配 置 对 象 获 取 ShardingSphereDataSource。该对象实现自 JDBC 的标准 DataSource 接口,可用于原生 JDBC 开发,或使用 JPA, MyBatis 等 ORM 类库。 DataSource dataSource = ShardingSphereDataSourceFactory. 传统的将数据集中存储至单一数据节点的解决方案,在性能、可用性和运维成本这三方面已经难于满足 互联网的海量数据场景。 从性能方面来说,由于关系型数据库大多采用 B+ 树类型的索引,在数据量超过阈值的情况下,索引深度 的增加也将使得磁盘访问的 IO 次数增加,进而导致查询性能的下降;同时,高并发访问请求也使得集中 式数据库成为系统的最大瓶颈。 从可用性的方面来讲,服务化的无状态型,能够达到较小成本的随意扩容,这必然导致系统的最终压力 的随意扩容,这必然导致系统的最终压力 都落在数据库之上。而单一的数据节点,或者简单的主从架构,已经越来越难以承担。数据库的可用性, 已成为整个系统的关键。 从运维成本方面考虑,当一个数据库实例中的数据达到阈值以上,对于 DBA 的运维压力就会增大。数据 备份和恢复的时间成本都将随着数据量的大小而愈发不可控。一般来讲,单一数据库实例的数据的阈值 在 1TB 之内,是比较合理的范围。 在传0 码力 | 301 页 | 3.44 MB | 1 年前3
Apache ShardingSphere 中文文档 5.4.1ShardingSphere 环境。 4.2 集群模式 提供了多个 Apache ShardingSphere 实例之间的元数据共享和分布式场景下状态协调的能力。它能够提 供计算能力水平扩展和高可用等分布式系统必备的能力,集群环境需要通过独立部署的注册中心来存储 元数据和协调节点状态。 在生产环境建议使用集群模式。 10 5 线路规划 11 6 如何参与 ShardingSphere 传统的将数据集中存储至单一节点的解决方案,在性能、可用性和运维成本这三方面已经难于满足海量 数据的场景。 从性能方面来说,由于关系型数据库大多采用 B+ 树类型的索引,在数据量超过阈值的情况下,索引深度 的增加也将使得磁盘访问的 IO 次数增加,进而导致查询性能的下降;同时,高并发访问请求也使得集中 式数据库成为系统的最大瓶颈。 从可用性的方面来讲,服务化的无状态性,能够达到较小成本的随意扩容,这必然导致系统的最终压力 意扩容,这必然导致系统的最终压力 都落在数据库之上。而单一的数据节点,或者简单的主从架构,已经越来越难以承担。数据库的可用性, 已成为整个系统的关键。 从运维成本方面考虑,当一个数据库实例中的数据达到阈值以上,对于 DBA 的运维压力就会增大。数据 备份和恢复的时间成本都将随着数据量的大小而愈发不可控。一般来讲,单一数据库实例的数据的阈值 在 1TB 之内,是比较合理的范围。 在传统的0 码力 | 530 页 | 4.49 MB | 1 年前3
Apache ShardingSphere 中文文档 5.3.2ShardingSphere 环境。 4.2 集群模式 提供了多个 Apache ShardingSphere 实例之间的元数据共享和分布式场景下状态协调的能力。它能够提 供计算能力水平扩展和高可用等分布式系统必备的能力,集群环境需要通过独立部署的注册中心来存储 元数据和协调节点状态。 在生产环境建议使用集群模式。 10 5 线路规划 11 6 如何参与 ShardingSphere 传统的将数据集中存储至单一节点的解决方案,在性能、可用性和运维成本这三方面已经难于满足海量 数据的场景。 从性能方面来说,由于关系型数据库大多采用 B+ 树类型的索引,在数据量超过阈值的情况下,索引深度 的增加也将使得磁盘访问的 IO 次数增加,进而导致查询性能的下降;同时,高并发访问请求也使得集中 式数据库成为系统的最大瓶颈。 从可用性的方面来讲,服务化的无状态性,能够达到较小成本的随意扩容,这必然导致系统的最终压力 意扩容,这必然导致系统的最终压力 都落在数据库之上。而单一的数据节点,或者简单的主从架构,已经越来越难以承担。数据库的可用性, 已成为整个系统的关键。 从运维成本方面考虑,当一个数据库实例中的数据达到阈值以上,对于 DBA 的运维压力就会增大。数据 备份和恢复的时间成本都将随着数据量的大小而愈发不可控。一般来讲,单一数据库实例的数据的阈值 在 1TB 之内,是比较合理的范围。 在传统的0 码力 | 508 页 | 4.44 MB | 1 年前3
共 18 条
- 1
- 2













