14、缓存的使用姿势(二):缓存如何做到高可用?你好,我是唐扬。 前面几节课,我带你了解了缓存的原理、分类以及常用缓存的使用技巧。我们开始用缓存承担大部分的读压力,从而缓解数据库的查询压力,在提升性能的同时保证系统的稳定性。这时,你的电商系统整体的架构演变成下图的样子: 我们在Web层和数据库层...2025-11-06
13、缓存的使用姿势(一):如何选择缓存的读写策略?上节课,我带你了解了缓存的定义、分类以及不足,你现在应该对缓存有了初步的认知。从今天开始,我将带你了解一下使用缓存的正确姿势,比如缓存的读写策略是什么样的,如何做到缓存的高可用以及如何应对缓存穿透。通过了解这些内容,你会对缓存的使用有深刻的认识,这样...2025-11-06
12、缓存:数据库成为瓶颈后,动态数据的查询要如何加速?你好,我是唐扬。 通过前面数据库篇的学习,你已经了解了在高并发大流量下,数据库层的演进过程以及库表设计上的考虑点。你的垂直电商系统在完成了对数据库的主从分离和分库分表之后,已经可以支撑十几万DAU了,整体系统的架构也变成了下面这样: 从整体上看,数...2025-11-06
11、NoSQL:在高并发场景下,数据库和NoSQL如何做到互补?你好,我是唐扬。 前几节课,我带你了解了在你的垂直电商项目中,如何将传统的关系型数据库改造成分布式存储服务,以抵抗高并发和大流量的冲击。 对于存储服务来说,我们一般会从两个方面对它做改造: 1.提升它的读写性能,尤其是读性能,因为我们面对的多是一些读...2025-11-06
10、发号器:如何保证分库分表后ID的全局唯一性?你好,我是唐扬。 在前面两节课程中,我带你了解了分布式存储两个核心问题:数据冗余和数据分片,以及在传统关系型数据库中是如何解决的。当我们面临高并发的查询数据请求时,可以使用主从读写分离的方式,部署多个从库分摊读压力;当存储的数据量达到瓶颈时,我们可以...2025-11-06