什么是读写分离?
读写分离就是让主库处理事务性查询,从库处理select查询。数据库复制被用来把事务性查询导致的数据变更同步到从库,当然,主库也可以select查询。
读写分离最大的作用就是缓解服务器的压力。
读写分离的好处都有哪些?
- 增加冗余;
- 缓解服务器的压力;增加机器的处理能力;
- 对于读应用较多的,应用读写分离是最好的,可以确保写的服务器压力更小,而读的服务器又可以接受点时间上的延迟。
读写分离提高性能的原因?
1.物理服务器增加;负荷增加;
2.主库和从库只负责自己的写和读操作,极大的缓解了X锁和S锁;
3.从库可以配置为myisam引擎,提高读的性能及节省系统开销;
4.从库同步主库的数据和主库直接写还是有区别的,从库是通过主库发来的binlog来同步的,但是呢,区别在于主库向从库发送binlog是异步的,所以同步数据也是异步的。
5.读写分离适用于读的操作应用较多的场景,如果只有一台服务器,当select很多时,update和delete会被select的访问堵塞,这时就需要等待select结束,并发性能不高;当读和写比例相近时,可以设置成互为主从。
6.分摊读写,这个就是拿机器数量去换性能。
7.增加冗余,提高容错,当主故障时,可以迅速地把从切换为主来使用。