后端架构师必知必会系列:分布式锁与并发控制

发布于:2023-09-27 ⋅ 阅读:(64) ⋅ 点赞:(0)

作者:禅与计算机程序设计艺术

1.简介

现在互联网大环境下,网站流量和并发访问量日益增长,网站的高可用性及可伸缩性越来越成为企业考虑的问题。因此,如何有效地保障并发访问、高可用、及时响应用户请求等需求成为企业面临的一大难题。
  在互联网发展的早期,基于集中式服务器部署模式的网站在高并发访问下性能一般般,不过随着大规模集群的出现,如今很多网站已经将应用部署在分布式集群上,特别是在微服务架构兴起之后。
  为了提高网站的处理能力、扩展性及容错能力,使其能够应对更复杂的业务场景,分布式系统需要引入分布式锁及分布式事务机制。分布式锁与分布式事务是保障分布式系统一致性的关键手段之一。本文将以分析分布式锁及分布式事务相关的基础知识、原理以及典型的实现方法进行阐述。

2.基本概念术语说明

2.1 分布式锁(Distributed Lock)

分布式锁是一种用于控制多个进程或线程对共享资源进行排他性访问的机制。简单来说,就是在任何时候,只允许一个进程或线程对某项资源进行访问,其他进程或线程则需要等待该进程或线程完成任务之后才能获取该资源的独占权力。通过这种方式,可以保证对共享资源的完整性,同时也避免了由于竞争而导致的数据不一致问题。

1、为什么要用分布式锁?
    分布式系统一般由多台服务器组成,在分布式系统中,各个服务器之间无法直接通信,因此需要采用一种“分布式协调”的方式来达到信息共享的目的。比如,多个服务器之间需要共同完成某个任务,那么每个服务器都可以根据自己的状态来判断是否可以开始这个任务。如果一个服务器认为自己可以开始这个任务,那么它就会把这个消息发送给其它


网站公告

今日签到

点亮在社区的每一天
去签到