温馨提示:文本由机器自动转译,部分词句存在误差,以视频为准
00:00
前面我们测试了数据库的主存同步,但在这种模式下呢,它不能解决我们这个单表的性能问题,比如以这个订单为例例,我们这个使用久了以后,我们订单这张表产生了千万的这个数据,那单表查询起来呢就非常慢,所么此时就要数据来进行分片存储,那每一个马SQ可以只来存一点数据,这就是我们接下来要说的分库分表,那这个分库分表要怎么做?如果使用我们这个马默认的这些集群方式,除了来使用window DB class外,我们还可以在我们主存同步配置的时候,包括我们使用双主配置的时候,我们让每一个主服务器设置一个自己的自增主件,比如我们第一个服务器,我们可以这么来设置,在它的配置文件里边,我们来设置automent ofset,那它自增主键从一开始增长,然后呢,每次不长,是二,然后第二个服务器呢,是从二增长,每次呢不长。
01:00
也是二,所以它最终呢就是135,所有的主键都是奇数列,而它呢就是246,这都是偶数列,那以后我们要查哪个,就去相应的这个节点里边进行查询就行了,但这种方式呢,我们说不好维护,最终也没有人去来使用这种方式,那如果真要做分库分表,我们就需要使用到一些中间件,比如我们上回谷讲的my cat和我们接下来用的这个沙丁fair,这些中间件呢,都可以来完成我们这个风库分表操作,那这个沙丁S该怎么使用,我们直接可以来百度来到它的这个官方文档,我们就叫沙丁。So菲,这个官方文档里边呢,说的非常清楚,我们这个沙丁SE菲尔,而且呢也做了中国际化,我们来点进来。我们这个沙丁SE fair呢,它有非常多的这个生态圈,我们说这个沙丁fair,它有咱们这几个东西呢,它是几个相互独立的产品组成的,第一个叫沙定JDBC,第二个呢是沙Ding proxy,第三个是沙定s car,但这个呢还没完成,那这个我们就不说了,那这个沙定j d bc proxy,这都是什么?所以我们来说这个Sha定JDBC,这个Sha定JDBC呢,大家就是认为是自己。
02:19
以前用的这些d rudc、3P0等等,这些数据库的连接池是用来连接我们这个数据库的,以前大家用的数据库的驱动等等,那现在呢,我们就可以使用沙定JDBC替成我们的这个连接池,那有了沙定JDBC可以怎么办呢?如果是我们这个微服务,这个微服务呢,我们有两处的这个业务代码,然后我们想要把所有的数据分散的保存这三个数据库,我们只需要引入杀定JDBC这个依赖,然后呢,我们在我们每一个代码里边配置好沙定JDBC的这个分库分表策略,然后只要我们来给数据库保存一个数据,它呢就会按照我们预先指定的策略计算好到底要保存哪个库,它呢就保存到这个库,这是我们说的商品JDBC的方式,但如果你使用产品JBBC,你还要引依赖,你觉得太麻烦了。还有另外一种叫沙丁proxy,这个proxy呢,它是一个数据库的代理端相。
03:19
关于呢,他假装自己是一个数据库,带我们来管理数据库,我们以后的业务代码全部联想他就行了,然后我们对数据库的所有增删改、查操作都是它经由处理,最后来到我们真正的这些数据库,所以我们可以来使用shading proxy,那这个shading proxy呢,我们是这样子的,比如这是我们的应用程序,以前我们可以选择导入SJDBC的依赖,我们自己来配置分库分表,包括读写分离等各种规则,但是呢,我们嫌太麻烦,那我们就可以安装一个中间件叫shading proxy,然后呢,我们的应用代码全部联向shading proxy,如杀Ding proxy,带我们来操作数据库,那这样以后我们所有需要操作数据库的请求,我们都是呢,连上它的这个proxy,由他带我们来操作它下边管理的这些数据库,这是我们说的shading proxy,还有他的这个shading set car可以在cooper里。
04:19
来进行使用的,只不过呢,还没做好。
我来说两句