• 第二章:ShardingSphere简介


    目录

    什么是ShardingSphere

    ShardingSphere-JDBC

    ShardingSphere-Proxy

    部署形式

    ShardingSphere-JDBC 独立部署、

    ShardingSphere-Proxy 独立部署

    混合部署架构


    什么是ShardingSphere

    何为ShardingSphere呢?其实我们总结如下三点就能很好的理解:

    1、一整套开源的分布式数据库中间件解决方案

    2、有三个产品组成:Sharding-JDBC、Sharding-Proxy、Sharding-Sidecar(规划中)

    3、他的定位是关系型数据库的中间件,在分布式环境下合理的使用关系型数据库的操作

    ShardingSphere-JDBC

    ShardingSphere-JDBC 定位为轻量级 Java 框架,在 Java 的 JDBC 层提供的额外服务。

    ShardingSphere-Proxy

    ShardingSphere-Proxy 定位为透明化的数据库代理端,通过实现数据库二进制协议,对异构语言提供支持。

    部署形式

    Apache ShardingSphere 由 ShardingSphere-JDBC 和 ShardingSphere-Proxy 这 2 款既能够独立部署,又支持混合部署配合使用的产品组成。 它们均提供标准化的基于数据库作为存储节点的增量功能,可适用于如 Java 同构、异构语言、云原生等各种多样化的应用场景。

    ShardingSphere-JDBC 独立部署、

    ShardingSphere-JDBC 定位为轻量级 Java 框架,在 Java 的 JDBC 层提供的额外服务。 它使用客户端直连数据库,以 jar 包形式提供服务,无需额外部署和依赖,可理解为增强版的 JDBC 驱动,完全兼容 JDBC 和各种 ORM 框架。

    • 适用于任何基于 JDBC 的 ORM 框架,如:JPA, Hibernate, Mybatis, Spring JDBC Template 或直接使用 JDBC;
    • 支持任何第三方的数据库连接池,如:DBCP, C3P0, BoneCP, HikariCP 等;
    • 支持任意实现 JDBC 规范的数据库,目前支持 MySQL,PostgreSQL,Oracle,SQLServer 以及任何可使用 JDBC 访问的数据库。

    ShardingSphere-Proxy 独立部署

    ShardingSphere-Proxy 定位为透明化的数据库代理端,通过实现数据库二进制协议,对异构语言提供支持。 目前提供 MySQL 和 PostgreSQL 协议,透明化数据库操作,对 DBA 更加友好。

    • 向应用程序完全透明,可直接当做 MySQL/PostgreSQL 使用;
    • 兼容 MariaDB 等基于 MySQL 协议的数据库,以及 openGauss 等基于 PostgreSQL 协议的数据库;
    • 适用于任何兼容 MySQL/PostgreSQL 协议的的客户端,如:MySQL Command Client, MySQL Workbench, Navicat 等。

    混合部署架构

    ShardingSphere-JDBC 采用无中心化架构,与应用程序共享资源,适用于 Java 开发的高性能的轻量级 OLTP 应用; ShardingSphere-Proxy 提供静态入口以及异构语言的支持,独立于应用程序部署,适用于 OLAP 应用以及对分片数据库进行管理和运维的场景。

    Apache ShardingSphere 是多接入端共同组成的生态圈。 通过混合使用 ShardingSphere-JDBC 和 ShardingSphere-Proxy,并采用同一注册中心统一配置分片策略,能够灵活的搭建适用于各种场景的应用系统,使得架构师更加自由地调整适合于当前业务的最佳系统架构。

    欢迎大家点击下方卡片,关注《coder练习生》

  • 相关阅读:
    阿里巴巴余军:钉钉宜搭低代码实践之路
    Android dumpsys介绍
    lesson0-C++入门(6000余字详细配图讲解)
    【leetcode】 最多删除一个字符得到回文
    CalBioreagents 绵羊抗α-2-HS糖蛋白 亲和纯化说明
    对比Flink、Storm、Spark Streaming 的反压机制
    Vue组件间的通信方式浅析
    第九章(1):循环神经网络与pytorch示例(RNN实现股价预测)
    TC4056A 1A线性锂离子电池充电器芯片IC
    【STM32】HAL库UART含校验位的串口通信配置BUG避坑
  • 原文地址:https://blog.csdn.net/ybb_ymm/article/details/130830994