Sharding-JDBC 整合为新项目
极客时间编辑部
讲述:杜力大小:3.26M时长:02:22
在众多的数据库中间件实现技术中,通常存在两种架构模式,一种是 Proxy 架构(服务端架构),它独立部署,与应用分开,对不同数据库进行统一代理,以集群形式对数据库流量进行集中式管理与监控;另一种模式是客户端架构,常见形式是对 JDBC 进行修改与扩展,也就是中间件与应用不分开部署,在应用层对数据源进行管控。
Sharding-JDBC 分布式数据库中间件,顾名思义,它是基于 JDBC 的。它被定义为轻量级 Java 框架,使用客户端直连数据库,以 jar 包形式提供服务,对 ORM 透明,完全兼容 JDBC 和各种 ORM 框架。它在 Java 的 JDBC 层以对业务应用零侵入的方式额外提供数据分片、读写分离、柔性事务和分布式治理能力。
更进一步来说,Sharding-JDBC 是基于客户端的架构模式。
项目创建者张亮表示,未来的 Sharding-JDBC 将会变得多元化,除了提供 Proxy 版本,还将支持 Agent 版本。所谓的 Agent 版本与现在流行的 Service Mesh 模式较为相似,Service Mesh 通过 Sidecar 去代理和管控流量,而 Sharding-JDBC 希望通过同样的 Sidecar 的方式代理和管控 SQL,以做到非侵入和跨语言的 Database Mesh。
如今,Sharding-JDBC 集成 Sharding-Proxy 与 Sharding-Sidecar,以全新项目 Sharding-Sphere 的形式重新出发,重磅发布。
Sharding-Sphere 定位为关系型数据库中间件,旨在充分合理地在分布式的场景下利用关系型数据库的计算和存储能力,而并非实现一个全新的关系型数据库。目前阶段更加关注的不是颠覆原有的技术,而是在原有的基础上进行增量。
这个新项目包含三个子项目:Sharding-JDBC、Sharding-Proxy 和 Sharding-Sidecar。它主要用于透明化分布式数据库所带来的 SQL、事务以及治理方面的相关复杂度,让用户像使用一个数据库一样管理和使用散落在系统各个部分的数据库。
三个子项目之间既可以独立使用,也可以相互配合,以不同的架构模型、不同的切入点,实现相同的功能目标,而其核心功能,如数据分片、读写分离、柔性事务等,都是同一套实现代码。
据介绍,Sharding-Sphere 下一步的计划主要体现在内核提升、开发新功能以及涵盖范围的扩展三个方面。
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
- 深入了解
- 翻译
- 解释
- 总结
该免费文章来自《极客视点》,如需阅读全部文章,
请先领取课程
请先领取课程
免费领取
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
登录 后留言
精选留言
由作者筛选后的优质留言将会公开显示,欢迎踊跃留言。
收起评论