数据库读写分离的初步理解
传统的应用通常会将业务的表放在同一个数据库,所有的学些操作连接的都是一个数据库,在信息爆炸的今天,很多业务模块的信息数据会非常大,此时将所有的操作都放在一个数据库上不能满足性能需求,因为一台服务器其IO、CPU等资源都是有限的。
为什么要做读写分离了?
- 较多数业务都会频繁的读(查询)数据库。
- 读(查询)非常占用CPU和IO。
针对上述原因,目前很多系统架构上采取了数据库的“读写分离”的策略。
如上图所示,数据库上分为一个Master库和多个Slave库,其中Master库为主库,只有一个,用作写数据;Slave为从库,有多个,用作查询。
很显然如果将数据分库处理,会导致主从数据库上的数据不同步,居于此,不同的数据库有不同保持数据同步的方法,相关资料请自行百度。不管哪类数据库,使用分库的方式,多个数据库之间的数据同步都需要一定的时间。
Doing is better than nothing