1.简介
“分布式系统”这个词汇在我们眼中似乎是高大上、神秘的词汇。如果你是软件开发人员或者架构师,那么你对分布式系统可能不陌生。但是如果你是一个工程师或者技术负责人,你或许对“分布式系统”这个词语有很多误解。我个人认为“分布式系统”是一个广义的概念,它可以定义成一组计算机硬件、软件组件和服务的集合体,这些组件和服务之间通过网络通信协同工作,共同完成某项任务。特别是在微服务架构兴起之后,“分布式系统”也越来越成为一种架构模式。在本文中,我将介绍如何实现分布式锁与同步,也就是实现多个服务之间的数据共享和资源访问控制。当然,还包括一些扩展阅读资料。
2.基本概念术语说明
分布式锁
分布式锁(Distributed Lock)是控制分布式系统之间对共享资源进行独占访问的一种方式。一般来说,为了保证系统的高可用性,需要对关键业务流程进行分布式部署,从而使得不同节点上的服务能够共同协作处理业务请求。在这种情况下,如果不同的服务节点同时对某个资源进行读写操作,就会导致数据不一致的问题。为了避免此类问题发生,引入了分布式锁机制。分布式锁机制允许一个节点获取到锁之后才能对该资源进行操作,其他节点则需要等待获取锁的释放后才能对资源进行操作。
分布式锁的实现主要涉及两类角色:持有者(Holder)和待获取者(Waiting)。只有持有者才有权利对资源进行操作。当某个节点获取到锁之后,他就是持有者,其他节点都是待获取者。待获取者只能进入队列等候,直至锁被释放。在锁被释放之前,所有节点都无法对资源进行操作。
同步机制
原文地址:https://blog.csdn.net/universsky2015/article/details/133385341
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.7code.cn/show_21020.html
如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱:suwngjj01@126.com进行投诉反馈,一经查实,立即删除!