很多小伙伴可能会认为数据库的负载问题就应该使用“读写分离”来解决。这其实是一个非常大的误区,我们要使用“读写分离”,首先要搞明白“读写分离”能解决什么问题,而不仅仅只会使用这个技术。
1、什么是读写分离?
读写分离就是将数据库分为主数据库和从数据库,主库用来接收数据写入的操作,多个从库用来接收读数据的操作,主库将写入的数据通过一些机制实时同步到从库,比如Binlog等等。
2、读写分离解决什么问题?
大多数互联网公司的业务场景,往往都是读多写少。当访问量过大情况下,数据库查询首先会成为瓶颈,这个时候,如果我们希望能够线性的提升数据库的查询性能,消除读写锁冲突,从而提升数据库的写性能,那么就可以考虑采用读、写分离架构。用一句话概括,读写分离是用来解决数据库的读性能瓶颈的。
3、什么时候需要读写分离?
并不是任何查询性能瓶颈都需要考虑读写分离的,如果仅仅只是因为并发压力, 是最低级的解决方案。解决查询性能瓶颈我们还可以考虑其他的解决方案,比如数据分片、缓存或者加入搜索引擎等等,这里就不详细赘述,后面可以单独做一期视频来讲解。小伙伴们可以关注我的主页获取更多干货内容。
我是被编程耽误的文艺Tom,如果你还有其他不懂的面试题或者需要视频配套的文字资料,可以关注我