在当代高并发互联网架构中,随着业务规模的指数级增长,单体数据库往往成为系统性能的瓶颈。当单表数据量突破千万级,或并发访问量激增时,传统的垂直拆分或简单的缓存策略已难以满足需求,分库分表应运而生。然而,如何在最小化侵入业务代码的前提下,优雅地实现数据水平拆分,成为开发者面临的核心挑战。本课程《分布式数据库解决方案组成的生态圈Apache ShardingSphere》正是为了解决这一痛点而设计,旨在帮助学员系统掌握从理论到实战的完整知识体系。

课程开篇首先深入剖析了 Apache ShardingSphere 的基本概念,将其定位为一款分布式的数据库中间件生态。它不仅仅是一个工具,更是一套解决方案,涵盖了轻量级框架 Sharding-JDBC、分布式中间件 Sharding-Proxy 以及透明化数据库集群 ShardingSidecar 等多种形式。通过电商案例的引入,课程生动地阐释了“为何要分库分表”。以订单系统为例,当订单表数据量达到亿级,查询效率将急剧下降,此时通过水平拆分,将数据分散到多个数据库中,能有效降低单库压力,提升系统的可扩展性和高可用性。

在概念层面,课程详细讲解了分库分表的核心原理,包括路由算法、表节点映射以及分布式主键生成等关键机制。学员将理解 Sharding-JDBC 如何作为嵌入式框架,直接在 Java 应用中通过配置即可实现透明化的数据分片,无需改变原有的 SQL 语句结构,极大降低了改造成本。

实战环节是本课程的重头戏。从环境搭建开始,课程一步步引导学员构建基于 Spring Boot 的分片环境,并详细演示了如何根据 Sharding-JDBC 的版本获取对应的配置文件格式。无论是传统的 properties 属性文件配置,还是现代开发更青睐的 YAML 配置文件,课程都提供了详尽的代码示例与解析。特别是针对“水平分库”的案例实战,课程展示了如何将一个逻辑数据库拆分为多个物理数据库,并配置分片键以实现数据的均匀分布。

此外,课程还涵盖了版本差异的兼容性问题及常见配置陷阱的补充说明,确保学员在实际生产环境中能够规避风险。对于希望深入分布式存储领域、提升系统架构能力的后端开发人员而言,本课程不仅提供了理论支撑,更赋予了落地的工程能力,是构建高性能分布式系统不可或缺的学习资源。

课程目录

1 01shardingsphere的基本概念介绍 (08:35)
2 02通过电商案例讲解为何要分库分表 (08:53)
3 03分库分表的概念讲解 (05:31)
4 04sharding-jdbc的概念介绍 (06:30)
5 05sharding案例实战-环境搭建 (20:09)
6 06如何获取sharding-jdbc对应版本的配置文件 (16:55)
7 07通过properties的方式演示shardingjdb (08:31)
8 08通过yaml文件的配置方式 (01:57)
9 09水平分库分布的案例实战 (15:58)
10 10shardingspheare的补充 (02:10)