MySQL是当下互联网流行的开源数据库。在当前的后台开发中,MySQL应用非常普遍,企业在选拔Java人才时也会考察求职者诸如性能优化、高可用性、备份、集群、负载均衡、读写分离等问题。想要成为Java工程师,一定要熟练掌握MySQL,接下来小编就给大家分享MySQL数据库应用场景知识。
1、单Master
单Master的情况是普遍存在的,对于很多个人站点、初创公司、小型内部系统,考虑到成本、新频率、系统重要性等问题,系统只依赖一个单例数据库提供服务,基本上已经满足需求。单Master场景下应该关注四点:数据备份(冷备、热备、温备)、数据还原、备份监控、数据文件远程存储。
2、一主一从
考虑一主一从的多数初衷是系统性能和系统高可用性问题,除了单Master场景中的备份工作需要做好以外,还有性能优化、读写分离、负载均衡三项重点工作需要考虑。
3、一主n从
一旦开始考虑一主多从的服务器架构,则证明你的系统对可用性、一致性、性能中一种或者多种的要求比较高。好多系统在开始搭建的时候都会往这个方向看齐,这样“看起来”系统会健壮很多。一主n从关注的重点是:数据一致性、脑裂、雪崩、连接池管理。在此我向大家推荐一个架构学习交流圈。交流学习指导伪鑫:1253431195(里面有大量的面试题及答案)里面会分享一些资深架构师录制的视频录像:有Spring,MyBatis,Netty源码分析,高并发、高性能、分布式、微服务架构的原理,JVM性能优化、分布式架构等