本文作者:梁开权,叩丁狼高级讲师。原创文章,转载请注明出处。
读写分离
接着上一篇的分表分库我们继续来说读写分离
案例模型
让数据库的读和写功能分开,其中master负责所有的写操作以及在特殊情况下负责少量的读操作,slave在任何情况下都负责所有的读操作,不负责任何写操作,同样完成这个操作我们需要至少需要2个连接池,具体选择哪个连接池来操作取决于内部的一个叫路由的组件,该组件具有SQL的识别功能
注意:该功能需要依靠数据库的主从同步才能实现,具体怎么配置请参考之前的笔记
建表
-- 分别在主和从服务器中建立数据库sharding,并且建表employee
CREATE TABLE `employee` (
`id` bigint(20) PRIMARY KEY AUTO_INCREMENT,
`name` varchar(255) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- ###################################
CREATE TABLE `employee`

本文介绍了使用Sharding JDBC实现数据库的读写分离和分库分表。通过设置不同的连接池,master负责写操作,slave处理读操作,依赖于数据库主从同步。案例中展示了配置、建表、应用属性设置、mapper和测试过程。虽然增加了冗余,但提高了读操作的处理能力,适合读多写少的应用场景。进一步的,结合数据分片,需要至少2主2从的架构。
最低0.47元/天 解锁文章
947

被折叠的 条评论
为什么被折叠?



