拦截insert、update、delete方法读取写库,拦截select方法读取读库,
当有j集群的时候就需要自己写算法了,例如取余,例如根据时间等等
缺点是:需要自己实现,数据库管理比较复杂,不利于项目维护工作。
HaProxy方式mysql服务本身可以搭建集群,具体负载均衡交给 HaProxy 来做。
缺点:大数量存储,分表,分库,不易管理
数据库管理中间件集群的管理,负载均衡,分表分库使用mycat是很方便的
mycat分片原理
todo 这个算法应该只是举个例子,不是mycat真实的吧
mycat/conf/schema.xml
下面这个配置的大概意思是:
把tb_brand这张表进行分库操作,下面只是一个很简单的配置,并没有实际的应用,所以只能作为参考
<?xml version="1.0"?>
在schema.xml中,有rule,根据值去rule.xml中找具体的值,然后再根据值可以找到conf目录下的txt文件
例如:autopartition-long.txt
这个分片的规则,就是根据id,0-500W操作第一个库,
# range start-end ,data node index# K=1000,M=10000.0-500M=0500M-1000M=11000M-1500M=2
todo
整篇文章都是一个简介,达不到应用的效果,以后有时间再说吧
弱小和无知不是生存的障碍,傲慢才是。 《三体》