从零开发分布式数据库中间件 一、读写分离的数据库中间件

  在传统的单机体系中,我们在操作数据库时,只需要直接得到数据库的连接,然后操作数据库即可,可是在现在的数据爆炸时代,只靠单机是无法承载如此大的用户量的,即我们不能纵向扩展,那么我们就只能水平进行扩展,即使用读写分离的主从数据库来缓解数据库的压力,而在读写分离之后,如何使程序能正确的得到主数据库的连接或者是从数据库的连接,就是我们今天读写分离的数据库中间件需要实现的。

一、主从数据库介绍:

  主从数据库即为一个主数据库会有对应n个从数据库,而从数据库只能有一个对应的从数据库。主从数据库中写的操作需要使用主数据库,而读操作使用从数据库。主数据库与从数据库始终保持数据一致性。其中保持数据库一致的原理即为当主数据库数据发生变化时,会将操作写入到主数据库日志中,而从数据库会不停的读取主数据库的日志保存到自己的日志系统中,然后进行执行,从而保持了主从数据库一致。


二、开发前准备及ConnectionFactory类的开发:

  在了解了主从数据库后,我们可以进行分布式数据库中间件的开发,由于mysql本身支持主从数据库,但限于篇幅,就不讲mysql的主从配置了,我们先使用本机的mysql作为一主两从的数据库源即可,下面是我本机的数据库连接配置文件,其中有一主两从:

master.driver=com.mysql.jdbc.Driver
master.dburl=jdbc\:mysql\://127.0.0.1\:3306/master_slave_db
master.user=root
master.password=mytestconslave1.driver=com.mysql.jdbc.Driver
slave1.dburl=jdbc\:mysql\://127.0.0.1\:3306/master_slave_db
slave1.user=root
slave1.password=mytestconslave2.driver=com.mysql.jdbc.Driver
slave2.dburl=jdbc\:mysql\://127.0.0.1\:3306/master_slave_db
slave2.user=root
slave2.password=mytestcon
有了主从数据库的连接配置后,就可以将配置进行封装。

封装的DataSource类:

public class DataSource {private String driver;private String url;private String user;private String password;public Str


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部