上篇文章MySQL数据库读写分离的应用场景和存在问题,存在一些不足之处,在此完善一下。
全同步复制
MySQL的主从库,在全同步复制的情况下是不会出现读写不一致的情况的。
全同步复制
全同步复制(Fully synchronous replication),指当主库执行完一个事务,所有的从库都执行了该事务才返回给客户端。因为需要等待所有从库执行完该事务才能返回,所以全同步复制的性能必然会收到严重的影响。
多主库策略
如果存在读写不一致的情况,可以设置写之后3秒钟,读在主库进行,但是为了降低主库的压力,可以扩展多个主库。
多主库策略
使用缓存也能解决读写不一致的问题吗?
缓存方案
- 缓存的引入会增加问题的复杂性,因为你需要为缓存增加集群部署,保证其可靠性,如果不能保证缓存的可靠性,那么问题又会回到数据库主从问题,造成问题循环;
- 缓存可以降低数据库的压力,提供访问效率,但是针对主从不一致问题的解决问题是不可以的;