{{ item.name }}
{{ item.name }}

{{ it.name }}

{{ it.text }}

{{ it.name }}

{{ innerIt.name }}

{{ innerIt.text }}

{{news.time}}
{{news.title}}
数据库中间件‍都可以从那几个层次切入
2021-07-19发布 50浏览

随着使用时间的增加业务的不断发展,我们数据库中的表会越来越多表中的数据量也会越来越大。这时候我们我们怎样升级硬件数据库的数据处理能力都将遭遇瓶颈,这时候软件系统变慢变得无可避免,解决这一问题一个很有效的方法就是使用数据库中间件‍,今天我们一块看下这种中间件都可以从那几个层次切入。

QQ截图20210711201914.png

1.代码层

在同一个项目中创建多个数据源采用if else的方式直接根据条件在代码中路由。Spring中有动态切换数据源的抽象类如果项目不是很庞大使用这种方式能够快速的进行分库但缺点也是显而易见的这种海量的代码侵入是绝不能被接受的。这种方式了解一下即可一般不会去使用。

2.框架层

主要是修改或增强现有ORM框架的功能在SQL中增加一些自定义原语或者hint来实现。常见的比如实现一些拦截器增加一些自定义解析来控制数据的流向效果较好。但是这种只适合公司ORM框架统一的情况其他很多情况很难实现。而且大部分情况下要修改框架源码因此也不推荐。

3.驱动层

从驱动层开始我们可以理解为一个smart-client,通常是在连接池或者driver的基础上进行了一层封装内部可以与不同的数据库建立连接。服务需要查询的sql就交给smart-client进行解析优化然后发送给具体的数据库进行操作。

小编在这里推荐在驱动层使用数据库中间件‍,因为这个比较容易实现并且不会出现业务入侵,另外smart-client不需要实现客户端通信协议只需要在数据数据库厂商提供的不同语言的数据库驱动上做封装即可。并且还有一个的特点就是天然去中心化。


上一篇
MySQL培训对企业管理的重要作用
400-820-6580 13916131869
marketing@actionsky.com
上海市闵行区万源路2138号泓茂中心2号楼
产品详情
关系型数据库
AI数据库
数据库智能管理平台
数据库生态产品
行业案例
金融行业
新零售行业
制造业
通信行业
更多
公司动态
最新新闻
国产化信息
技术分享
关于我们
公司简介
公司分布
国家专利
资质认证
扫码关注公众号
© Copyright 2017, All rights reserved by: 上海爱可生信息技术股份有限公司 沪ICP备12003970号-1 | 法律声明 | 网站地图
沪公网安备 31010402003331号