
标签:
Apache ShardingSphere是一套开源的分布式数据库中间件解决方案组成的生态圈,它由JDBC、Proxy和Sidecar(规划中)这3款相互独立,却又能够混合部署配合使用的产品组成。它们均提供标准化的数据分片、分布式事务和数据库治理功能,可适用于如Java同构、异构语言、云原生等各种多样化的应用场景。
Apache ShardingSphere定位为关系型数据库中间件,旨在充分合理地在分布式的场景下利用关系型数据库的计算和存储能力,而并非实现一个全新的关系型数据库。它通过关注不变,进而抓住事物本质。关系型数据库当今依然占有巨大市场,是各个公司核心业务的基石,未来也难于撼动,我们目前阶段更加关注在原有基础上的增量,而非颠覆。
Apache ShardingSphere 5.x版本开始致力于可插拔架构,项目的功能组件能够灵活的以可插拔的方式进行扩展。目前,数据分片、读写分离、多数据副本、数据加密、影子库压测等功能,以及对MySQL、PostgreSQL、SQLServer、Oracle等SQL与协议的支持,均通过插件的方式织入项目。开发者能够像使用积木一样定制属于自己的独特系统。Apache ShardingSphere目前已提供数十个SPI作为系统的扩展点,而且仍在不断增加中。
ShardingSphere特点:
ShardingSphere-JDBC
定位为轻量级Java框架,在Java的JDBC层提供的额外服务。它使用客户端直连数据库,以jar包形式提供服务,无需额外部署和依赖,可理解为增强版的JDBC驱动,完全兼容JDBC和各种ORM框架。
适用于任何基于JDBC的ORM框架,如:JPA, Hibernate, Mybatis, Spring JDBC Template或直接使用JDBC。
支持任何第三方的数据库连接池,如:DBCP, C3P0, BoneCP, Druid, HikariCP等。
支持任意实现JDBC规范的数据库,目前支持MySQL,Oracle,SQLServer,PostgreSQL以及任何遵循SQL92标准的数据库。
ShardingSphere-Proxy
定位为透明化的数据库代理端,提供封装了数据库二进制协议的服务端版本,用于完成对异构语言的支持。 目前提供MySQL和PostgreSQL版本,它可以使用任何兼容MySQL/PostgreSQL协议的访问客户端(如:MySQL Command Client, MySQL Workbench, Navicat等)操作数据,对DBA更加友好。
向应用程序完全透明,可直接当做MySQL/PostgreSQL服务端使用。
适用于任何兼容MySQL/PostgreSQL协议的的客户端。
ShardingSphere-Sidecar(TODO)
定位为Kubernetes的云原生数据库代理,以Sidecar的形式代理所有对数据库的访问。通过无中心、零侵入的方案提供与数据库交互的的啮合层,即Database Mesh,又可称数据库网格。
Database Mesh的关注重点在于如何将分布式的数据访问应用与数据库有机串联起来,它更加关注的是交互,是将杂乱无章的应用与数据库之间的交互进行有效地梳理。使用Database Mesh,访问数据库的应用和数据库终将形成一个巨大的网格体系,应用和数据库只需在网格体系中对号入座即可,它们都是被啮合层所治理的对象。
混合架构
ShardingSphere-JDBC采用无中心化架构,适用于Java开发的高性能的轻量级OLTP应用;ShardingSphere-Proxy提供静态入口以及异构语言的支持,适用于OLAP应用以及对分片数据库进行管理和运维的场景。
Apache ShardingSphere是多接入端共同组成的生态圈。 通过混合使用ShardingSphere-JDBC和ShardingSphere-Proxy,并采用同一注册中心统一配置分片策略,能够灵活的搭建适用于各种场景的应用系统,使得架构师更加自由地调整适合与当前业务的最佳系统架构。
功能列表:
1、数据分片
分库 & 分表
读写分离
分片策略定制化
无中心化分布式主键
2、分布式事务
标准化事务接口
XA 强一致事务
柔性事务
3、数据库治理
分布式治理
弹性伸缩
可观测性(分布式跟踪、指标度量)
数据加解密
影子表压测

加载全部内容
jdchain 区块链框架系统943KB110人下载京东区块链 JD Chain 是一个企业级的区块链框架系统,具有简洁、易用、可扩展和高性能的特点。 核心实现采用 Java 语言,学习门槛低,运维简便,无缝兼容企业应用IT架构。 这是主项目仓库,主要包括了文档和集成打包的结构,以及多个Git子模块仓库framework, core, explore 等。JD Chain 的目标是实现一个面向企业应用场景的通用区块链框架系统,能够作为企业级基础设施
下载ApacheMaven项目构建工具4.41MB109人下载Apache Maven项目构建工具是一个流行的Java项目构建系统。目前,绝大多数开发人员都把Ant当作Java编程项目的标准构建工具。遗憾的是,Ant的项目管理工具(作为make的替代工具)不能满足绝大多数开发人员的需要。通过检查Ant构建文件,很难发现项目的相关性信息和其它元信息(如开发人员/拥有者、版本或站点主页)。Maven除了以程序构建能力为特色之外,还提供Ant所缺少的高级项目管理工
下载
MaxKey单点登录认证系统 官方版20.59 MB109人下载MaxKey单点登录认证系统 官方版(马克思的钥匙)用户单点登录认证系统(Sigle Sign On System),寓意是最大钥匙,是业界领先的企业级IAM身份管理和身份认证产品,支持OAuth 2.0/OpenID Connect、SAML 2.0、JWT、CAS等标准化的开放协议,提供简单、标准、安全和开放的用户身份管理(IDM)、身份认证(AM)、单点登录(SSO)、RBAC权限管理和资源管理等。这里下载站为您提供MaxKey单点登录认证系统 官方版下载,欢迎您使用这里下载站安装体验!
下载SkyWalking应用性能监控系统4.16MB109人下载SkyWalking 是一款开源的应用性能监控系统,包括指标监控,分布式追踪,分布式系统性能诊断。功能:1、服务,服务实例,端点指标分析2、根本原因分析。在运行时分析代码。阅读Apache SkyWalking:使用性能分析来修复分布式跟踪的盲点。3、服务拓扑图分析4、服务,服务实例和端点依赖关系分析5、检测到慢速服务和端点6、性能优化7、分布式跟踪和上下文传播8、数据库访问指标。检测慢速数据库访
下载bishengjdk-8 毕昇JDK8131.38MB108人下载毕昇JDK 8是华为内部OpenJDK定制版Huawei JDK的开源版本,是一个高性能、可用于生产环境的OpenJDK发行版。Huawei JDK运行在华为内部500多个产品上,积累了大量使用场景和java开发者反馈的问题和诉求,解决了业务实际运行中遇到的多个问题,并在ARM架构上进行了性能优化,毕昇JDK运行在大数据等场景下可以获得更好的性能。毕昇JDK 8与Java SE标准兼容,目前仅支持
下载
kkFileView在线预览 官方版184.50MB107人下载 kkFileView在线预览是一款使用spring boot打造的文件文档在线预览项目解决方案,支持doc、docx、ppt、pptx、xls、xlsx、zip、rar、mp4、mp3以及众多类文本如txt、html、xml、java、properties、sql、js、md、json、conf、ini、vue、php、py、bat、gitignore等文件在线预览。
下载
Jenkins持续集成引擎 正式版17.87 MB107人下载Jenkins持续集成引擎 正式版的前身是Hudson是一个可扩展的持续集成引擎。Jenkins是一款开源CI&CD软件,用于自动化各种任务,包括构建、测试和部署软件。Jenkins支持各种运行方式,可通过系统包、Docker或者通过一个独立的Java程序。这里下载站为您提供Jenkins持续集成引擎 正式版下载,欢迎您使用这里下载站安装体验!
下载Jpom 监控管理系统 正式版1.55MB107人下载Jpom项目监控软件是一款简而轻的低侵入式在线构建、自动部署、日常运维、项目监控软件。Jpom项目监控软件主要功能及特点:1、创建、修改、删除项目、Jar包管理2、实时查看控制台日志、备份日志、删除日志、导出日志3、cpu、ram 监控、导出堆栈信息、查看项目进程端口、服务器状态监控4、多节点管理、多节点自动分发5、实时监控项目状态异常自动报警6、在线构建项目发布项目一键搞定7、多用户管理,用户项
下载LinkWeChat开源系统 免费版8.64MB105人下载LinkWeChat,是一款基于企业微信的开源 SCRM 系统,为企业构建私域流量系统的综合解决方案,能显著提升企业社交运营效率。
下载
ofdrw读写库98.15MB104人下载使用ofdrw读写库可以像写HTML和Word那样简单的编写OFD。根据《GB/T 33190-2016 电子文件存储与交换格式版式文档》标准实现版式文档OFD库(含有书签)。ofdrw读写库项目结构:ofdrw-core OFD核心API,参考《GB/T 33190-2016 电子文件存储与交换格式版式文档》实现的基础数据结构。ofdrw-font 生成OFD字体相关。ofdrw-layout
下载