“读写分离”
概念:
“读写分离”就是将数据库分为主从库,一个主库用于写数据,多个从库用于完成读数据的操作,主从库之间通过某种机制进行数据同步,是一种常见的数据库架构。
数据库分组架构解决什么问题?
大部分的互联网业务,往往都是读多写少,数据库的读首先会成为数据库的瓶颈。这时我们就希望能够线性的数据库提高读性能,消除读写锁冲突从而提高数据库的写性能,那么就可以使用**“分组架构”**。
用一句话概述,读写分离就是解决数据库的读性能瓶颈的。
在互联网的引用情景,常常数据量大、并发量大、高可用要求高、一致性要求高,使用“读写分离”就需要
注意问题:
1、数据库连接池要进行区分,哪些是读连接池,哪个是写连接池,研发的难度会增加;
2、为了保证高可用性,读连接池要能够实现故障自动转移;
3、主从的一致性问题需要考虑
在这么多的问题需要考虑的情况下,如果我们仅仅是为了解决“数据库读的瓶颈问题”,为什么不选择使用缓存呢?
缓存
为什么使用缓存???
缓存,也是互联网中常常使用到的一种架构方式;与“读写分离”不同,“读写分离”是通过多个读库,分摊了数据库读的压力;而缓存则是通过将查询结构进行缓存,减少了查询对数据库的查询操作,减少了数据