0
点赞
收藏
分享

微信扫一扫

MyCat和Sharding-JDBC的联系与区别

Mycat和Sharding-jdbc的区别

首先mycat是一个数据库中间件sharding-jdbc是以jar包提供服务的jdbc框架

其次,使用mycat时不需要改代码,而使用sharding-jdbc时需要修改代码

Mycat:数据库中间件

在这里插入图片描述
Mycat:底层原理

Mycat的原理中最重要的一个动词是“拦截”,它拦截了用户发送过来的SQL语句,首先对SQL语句做了一些特定的分析:如分库分表分析、路由分析、读写分离分析、缓存分析等,然后将此SQL发往后端的真实数据库,并将返回的结果做适当的处理,最终再返回给用户。

Sharing-JDBC

在这里插入图片描述
Sharding-JDBC底层原理

当Sharding-JDBC接受到一条SQL语句时,会陆续执行

在这里插入图片描述

总结

  • sharding-jdbc作为一个组件集成在应用内,而mycat则作为一个独立的应用需要单独部署。
  • 从架构上看sharding-jdbc更符合分布式架构的设计,直连数据库,没有中间应用,理论性能是最高的。
  • 从耦合性来看,sharding-jdbc需要集成在应用内,集成到代码里,使得开发成本相对较高;而mycat大致上是无损开发,不需要怎么修改代码,交给mycat去托管,分库分表等代码无需太多关注。
举报

相关推荐

0 条评论