首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

数据库架构:主备+分库?主从+读写分离?

1、高可用分析:高可用,主库挂了,keepalive(只是一种工具)会自动切换到备库。这个过程对业务层是透明的,无需修改代码或配置。 2、高性能分析:读写都操作主库,很容易产生瓶颈。大部分互联网应用读多写少,读会先成为瓶颈,进而影响写性能。另外,备库只是单纯的备份,资源利用率50%,这点方案二可解决。 3、一致性分析:读写都操作主库,不存在数据一致性问题。 4、扩展性分析:无法通过加从库来扩展读性能,进而提高整体性能。 5、可落地分析:两点影响落地使用。第一,性能一般,这点可以通过建立高效的索引和引入缓存来增加读性能,进而提高性能。这也是通用的方案。第二,扩展性差,这点可以通过分库分表来扩展。

02

Java每日一题之常用的MySQL复制架构有哪些?

参考答案 : (1)一主多从 在主库读取请求压力非常大的场景下,可以通过配置一主多从复制架构实现读写分离,把大量对实时性要求不是特别高的读请求通过负载均衡分布到多个从库上,降低主库的读取压力,在主库出现异常宕机的情况下,可以把一个从库切换为主库继续提供服务。经常用在读写操作不频繁,查询量比较大的业务环境中。 (2)多级复制 一主多从的架构能够解决大部分读请求压力特别大的场景的需求,考虑到MySQL的复制是主库“推送”Binlog日志到从库,主库的I/O压力和网络压力会随着从库的增加而增长(每个从库都会在主库上有一个独立的Binlog Dump线程来发送事件),而多级复制架构解决了一主多从场景下,主库额外的I/O和网络压力。可以理解一个主库下面挂一个从库,一个从库下面再挂一个从库。 (3)双主复制/Dual Master其实就是主库Master和Master2互为主库,client客户端的写请求都方法主库Master,而读请求可以选择访问主库Master或Master2。也叫双主互备,然后主要用于对MySQL写操作要求比较高的环境中,避免了MySQL单点故障。

01
领券