构建高并发服务一直是程序员的痛点。咱们今天就用FastAPI
2025年05月23日
作者 | 雷架
文章来源 | 爱笑的架构师 (id :DancingOnYourCode)
缓存异常场景分类
在实际生产环境中有时会遇到缓存穿透、缓存击穿、缓存雪崩等异常场景,为了避免异常带来巨大损失,我们需要了解每种异常发生的原因以及解决方案,帮助提升系统可靠性和高可用。
缓存穿透
2025年05月23日
公平锁的目的是确保请求锁的线程能够按照请求顺序获得锁,避免锁的饥饿现象。在使用Redis实现分布式锁时我们应该如何保证锁的公平性呢?下面我们就来看看在实际开发中比较常用的几种保证分布式锁的公平性的操作。
可以使用Redis的List结构来实现一个队列,通过这个队列,当请求锁的线程到来时将其标识线程ID放入队列中。在锁的持有线程需要释放锁的时候,我们可以从队列中从队列中取出下一个请求并给它分配锁。
2025年05月23日
在数据库的江湖里,行级锁一直是个“神秘高手”——开发者知道它快,却总抱怨它“失控”。有人遇到死锁束手无策,有人因锁冲突拖垮系统,甚至有人质疑:“我明明用了行锁,怎么最后锁了整张表?” 答案藏在索引里。
2025年05月23日
在分布式系统中,为了防止多个节点同时操作共享资源,需要引入分布式锁来保证数据的一致性。常见的分布式锁可以基于数据库、Redis、Zookeeper等来实现,下面我们就来介绍一下,如何通过Redis来实现一套分布式锁。
使用Redis来实现分布式锁的优势就在于Redis是单线程的模型,具有丰富的键操作功能,支持原子性操作,并且具有高性能,支持分布式操作。因此特别适合作为分布式锁的基础存储系统。
2025年05月23日
在当今电商、本地生活服务等行业的各类促销活动里,高并发抢券的场景极为常见。就拿双 11、618 购物节来说,平台发放的优惠券数量有限,然而参与抢券的用户可能达到百万甚至千万级别,瞬间产生的高并发请求,对系统的稳定性和性能而言,无疑是巨大的挑战。Spring Boot 作为当下后端开发中广泛运用的框架,凭借快速开发、简化配置等优势,成为实现高并发抢券逻辑的热门之选。不过,要想在高并发场景中充分发挥其最大效能,还需深入研究并合理运用各种技术手段。
2025年05月23日
分布式锁是分布式系统的核心,也是大厂重点考察对象,下面我就全面来详解Redis分布式锁@mikechen
本篇已收于mikechen原创超30万字《阿里架构师进阶专题合集》里面。
分布式锁是一种用于在分布式系统中,协调多个进程、或者多个节点,对共享资源的访问机制。
2025年05月23日
在互联网大厂的后端开发领域,Spring Boot3 框架广泛应用于构建高效的应用程序。而随着业务规模的不断扩大,分布式系统的复杂性日益增加,如何确保多个服务实例对共享资源的安全、有序访问,成为了亟待解决的关键问题。分布式锁,作为应对这一挑战的有力手段,发挥着至关重要的作用。在众多实现分布式锁的技术方案中,借助 Redis 来实现具有显著优势,因其出色的性能和丰富的数据结构,成为了广大后端开发者的热门选择。今天,我们就深入探讨一下在 Spring Boot3 项目里,如何巧妙运用 Redis 实现分布式锁。
2025年05月23日
线程A在master获取锁之后,master在同步数据到slave时,master突然宕机(此时数据还没有同步到slave),然后slave会自动选举成为新的master,此时线程B获取锁,结果成功了,这样会造成多个线程获取同一把锁
解决方案