摘要:
1分布式系统介绍 1.1 分布式系统的发展 我们早期的集中式系统都是单体架构的,整个系统作为一个单体粒度的应用存在,所有的模块聚合在一起。明显的弊端就是不易扩展、发布冗重、服务稳定性治理不好做。 随着微服务架构的不断大规模应用,驱使我们把整个系统拆分成若干个具备独立运行能力的计算服务的集合, 通过交 阅读全文
摘要:
★ Redis24篇集合 1 介绍 作者是互联网一线研发负责人,所在业务也是业内核心流量来源,经常参与 业务预定、积分竞拍、商品秒杀等工作。 近期参与多场新员工的面试工作,经常就 『超高并发场景下热点数据』 可用性保障与候选人进行讨论。 本文聚焦一些关键点技术进行讨论,并总结一些热点场景的处理经验。 阅读全文
摘要:
相关文章 数据库系列:MySQL慢查询分析和性能优化 数据库系列:MySQL索引优化总结(综合版) 数据库系列:高并发下的数据字段变更 数据库系列:覆盖索引和规避回表 数据库系列:数据库高可用及无损扩容 数据库系列:使用高区分度索引列提升性能 数据库系列:前缀索引和索引长度的取舍 数据库系列:MyS 阅读全文
摘要:
1 介绍 在互联网场景下,负载均衡(Load Balance)是分布式系统架构设计中必须考虑的一个环节,它通常是指将负载流量(工作任务、访问请求)平衡、分摊到多个操作单元(服务器、组件)上去执行的过程。 目的在于提供负载配比,解决性能、单点故障(高可用)和扩展性(水平伸缩)等问题。 以上图为例,随着 阅读全文
摘要:
★ Redis24篇集合 1 介绍 AOF(Append Only File)持久化:以独立日志的方式存储了 Redis 服务器的顺序指令序列,并只记录对内存进行修改的指令。 当Redis服务发生雪崩等故障时,可以重启服务并重新执行AOF文件中的指令达到恢复数据的目的。也就是说,通过重放(repla 阅读全文
摘要:
★ Redis24篇集合 1 介绍 从上一篇的 《深刻理解高性能Redis的本质》 中可以知道, 我们经常在数据库层上加一层缓存(如Redis),来保证数据的访问效率。 这样性能确实也有了大幅度的提升,因为从内存中取数远比从磁盘中快的多,但是本身Redis也是一层服务,也存在宕机、故障的可能性。 一 阅读全文
摘要:
相关文章 数据库系列:MySQL慢查询分析和性能优化 数据库系列:MySQL索引优化总结(综合版) 数据库系列:高并发下的数据字段变更 数据库系列:覆盖索引和规避回表 数据库系列:数据库高可用及无损扩容 数据库系列:使用高区分度索引列提升性能 数据库系列:前缀索引和索引长度的取舍 数据库系列:MyS 阅读全文
摘要:
1 背景 我们之前介绍过,随着业务流量上涨之后,我们的系统需要适时的进行扩容。 数据存储层我们也介绍过MySQL的扩容 Scale UP(纵向扩展) 和 Scale Out(横向扩展) 垂直拆分(Scale Up 纵向扩展):包括垂直分库、垂直分表 水平拆分(Scale Out 横向扩展):包括库内 阅读全文
摘要:
1 背景 互联网场景下,我们经常会面临一个产品流量从初创时期的小流量到全盛大流量的过程。 这时候,原本的架构设计就显得很不合理,变成你追求服务稳定性阻碍。 然而这一切并不一定是你的架构能力的问题,而是在小流量场景下,不能过高的去评估容量和架构冗余性,避免造成不必要的资源和维护人力的浪费。 能做的是为 阅读全文
摘要:
★ Redis24篇集合 1 背景 互联网产品为了保证高性能和高可用性,经常会使用缓存来进行架构设计。最常用的就是使用Redis了,也有部分企业会选择使用Memcache。 所以了解 Redis 和 Memcache 的区别、共性以及各自应用场景,有助于我们在做技术选型的时候,有合理的判断依据。 2 阅读全文