zoukankan      html  css  js  c++  java
  • ShardingSphere 核心原理精讲

    课程背景


    由 Sharding-JDBC 升级的 ShardingSphere 作为业界首个 Apache 分布式数据库中间件项目,以其解决方案完备性、开发友好性、可插拔的系统扩展性,成为分库分表领域权威领先框架,已经被多家知名企业采用,包括京东、当当、哔哩哔哩等。

    作为开发人员,只要你有数据处理的需求,掌握 ShardingSphere 等主流分布式开发框架,一定是你工作、求职中超越同行的硬实力。

    专栏解读


    本专栏共 6 大模块,34讲内容,为你介绍主流分库分表解决方案和工程实践,带你掌握 ShardingSphere 核心功能和实现原理,基于 ShardingSphere 开源框架源码剖析,提高通用底层原理的理解力,提升实际场景开发能力。

    1.了解分库分表的应用方式和实现原理
    帮你理解 ShardingSphere 的核心特性,来满足日常开发工作所需。基于源码给出基础设施、分片引擎、分布式事务和治理与集成等等这些功能的设计原理和实现机制。课程配套代码,你可以在专栏的内容中找到下载链接。

    2.学习优秀的开源框架,提高技术理解与应用能力

    技术原理是具有相通性的。通过对开源框架(如 ZooKeeper、Nacos、Seata )的解读,强化你对技术体系的系统化理解,还可以让你掌握这些技术体系的具体应用场景和实现方式,从而实现触类旁通。

    3.学习从源码分析到日常开发的技巧

    在理解 ShardingSphere 的同时,带你提炼出包括:设计模式的应用(如工厂模式、策略模式、模板方法等)、微内核架构等架构模式、组件设计和类层结构划分的思想和实现策略、常见缓存的应用以及自定义缓存机制的实现、Spring 家族框架的集成和整合等开发技巧,这些开发技巧都能够直接应用到日常开发过程。

    课程讲师


    萧然,资深架构师、创业公司CTO

    曾在多家公司担任系统分析架构师、技术总监、CTO 等职位,拥有 10 余年软件行业从业经验。

    他对分布式系统的构建、海量数据下的数据存储和访问,以及基于 ShardingSphere 进行数据分库分表和治理工作有着丰富经验,曾带领团队完成业界领先的物联网数据平台建设。目前,他在一家创新型科技公司担任 CTO,负责产品研发和百余人团队的技术管理工作。

    课程大纲

    模块一:引入 ShardingSphere


    01 | 从理论到实践:如何让分库分表真正落地?
    02 | 顶级项目:ShardingSphere 是一款什么样的 Apache 开源软件?
    03 | 规范兼容:JDBC 规范与 ShardingSphere 是什么关系?
    04 | 应用集成:在业务系统中使用 ShardingSphere 的方式有哪些?
    05 | 配置驱动:ShardingSphere 中的配置体系是如何设计的?


    模块二:ShardingSphere 核心功能


    06 | 数据分片:如何实现分库、分表、分库+分表以及强制路由?(上)
    07 | 数据分片:如何实现分库、分表、分库+分表以及强制路由?(下)
    08 | 读写分离:如何集成分库分表+数据库主从架构?
    09 | 分布式事务:如何使用强一致性事务与柔性事务?
    10 | 数据脱敏:如何确保敏感数据的安全访问?
    11 | 编排治理:如何实现分布式环境下的动态配置管理?


    模块三:ShardingSphere 源码解析之基础设施


    12 | 从应用到原理:如何高效阅读 ShardingSphere 源码?
    13 | 微内核架构:ShardingSphere 如何实现系统的扩展性?
    14 | 分布式主键:ShardingSphere 中有哪些分布式主键实现方式?


    模块四:ShardingSphere 源码解析之分片引擎


    15 | 解析引擎:SQL 解析流程应该包括哪些核心阶段?(上)
    16 | 解析引擎:SQL 解析流程应该包括哪些核心阶段?(下)
    17 | 路由引擎:如何理解分片路由核心类 ShardingRouter 的运作机制?
    18 | 路由引擎:如何实现数据访问的分片路由和广播路由?
    19 | 路由引擎:如何在路由过程中集成多种路由策略和路由算法?
    20 | 改写引擎:如何理解装饰器模式下的 SQL 改写实现机制?
    21 | 执行引擎:分片环境下 SQL 执行的整体流程应该如何进行抽象?
    22 | 执行引擎:如何把握 ShardingSphere 中的 Executor 执行模型?(上)
    23 | 执行引擎:如何把握 ShardingSphere 中的 Executor 执行模型?(下)
    24 | 归并引擎:如何理解数据归并的类型以及简单归并策略的实现过程?
    25 | 归并引擎:如何理解流式归并和内存归并在复杂归并场景下的应用方式?
    26 | 读写分离:普通主从架构和分片主从架构分别是如何实现的?


    模块五:ShardingSphere 源码解析之分布式事务


    27 | 分布式事务:如何理解 ShardingSphere 中对分布式事务的抽象过程?
    28 | 分布式事务:ShardingSphere 中如何集成强一致性事务和柔性事务支持?(上)
    29 | 分布式事务:ShardingSphere 中如何集成强一致性事务和柔性事务支持?(下)


    模块六:ShardingSphere 源码解析之治理与集成


    30 | 数据脱敏:如何基于改写引擎实现低侵入性数据脱敏方案?
    31 | 配置中心:如何基于配置中心实现配置信息的动态化管理?
    32 | 注册中心:如何基于注册中心实现数据库访问熔断机制?
    33 | 链路跟踪:如何基于 Hook 机制以及 OpenTracing 协议实现数据访问链路跟踪?
    34 | 系统集成:如何完成 ShardingSphere 内核与 Spring+SpringBoot 的无缝整合?

    课程地址

  • 相关阅读:
    wim文件位置
    用DISM++来管理wim当中的驱动
    交易所基金代码段
    systemd配置nginx
    MACD公式
    nginx配置
    linux的tmfps
    nohup&
    geth
    RGB
  • 原文地址:https://www.cnblogs.com/shitboy/p/13475480.html
Copyright © 2011-2022 走看看