分库分表中间件

有proxy和client两种模式

proxy

相当于把中间件作为一个独立的服务了,它将接收到的SQL 语句做了一些特定的分析:如分片分析、路由分析、读写分离分析、缓存分析等,然后将此 SQL 发往后端的真实数据库,并将返回的结果做适当的处理,最终再返回给用户。代表:Mycat、DRDS

client

中间件在Driver或者连接池的基础之上,增加了一层封装。我们使用时,以Java开发为例,需要先引入一个jar包。中间件接收持久层产生的sql,同样对sql进行分析等操作,然后才落实到具体的库上。

区别

1、proxy模式需要部署多节点服务,增加了网络IO,影响到了性能,但是对代码基本没有入侵性,方便易用。

2、client模式与其相反,不影响到性能,但是对代码有入侵性,需要管理配置。

中间件

MyCat

MyCat是一个开源的分布式数据库系统,是一个实现了 MySQL 协议的的Server,前端用户可以把它看作是一个数据库代理,用 MySQL 客户端工具和命令行访问,而其后端可以用MySQL 原生(Native)协议与多个 MySQL 服务器通信,也可以用 JDBC 协议与大多数主流数据库服务器通信,其核心功能支持分库分表和读写分离(scheme.xml)

 

TDDL

TDDL现时架构分为了3层,最上层的TDataSource负责分库分表路由,中间层TGroupDataSource 负责主备切换和读写分离,最下层AtomDataSource使用了剥离的Druid/JBOSS数据源并且可以动态改IP、连接信息等。3层数据源都可以单独使用,应对不同的应用场景。

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值