分布式系统知识学习(三)分布式锁

分布式系统知识学习(三)分布式锁,第1张

分布式系统知识学习(三)分布式

分布式系统知识体系庞大而精妙,不花费大量的时间无法掌握。本文根据一些前人经验和自己摸索总结,由浅入深、由基础概念到实际运用,给出了一条学习曲线相对平滑的分布式学习攻略,希望和大家多多交流,共同进步。本篇为基础篇学习,涉及到了数百篇论文及博客资料,需要耐下心慢慢学习才可以体会到其精髓,欲速则不达。

另外,本系列文章在github上优先更新,有空才会更新CSDN的同篇文章,有兴趣的可以关注Awesome-Distributed-System

分布式锁

分布式锁,顾名思义是用于分布式系统的锁,其作用和多线程贡献资源时的锁本质上是一样的,只不过是在分布式的场景下,所以需要考虑更多的问题。这篇博客很值得一看《How to do distributed locking》。除此之外还有《Leases: an efficient fault-tolerant mechanism for distributed file cache consistency》值得学习。

Memcache

Memcache由于其实现,本身做分布式锁不是很合适的选择,但是正因为其简单,可以作为了解分布式锁的入门级尝试,如

《A simple distributed lock with memcached》《Distributed resource locking using memcached》


Redis

官方指导文档《Distributed locks with Redis》肯定是要先看的,这里给出了数十种不同的分布式锁的实现,可以选择自己擅长的语言进行学习。《Distributed Lock Implementation With Redis》讲述了实现Redis分布式锁的过程,也值得一看。


Chubby

Chubby是谷歌分布式领域的重要产品,Chubby的设计初衷是为了解决分布式系统中的一致性问题,其中最常见的就是分布式系统的选主需求及一致性的数据存储。Chubby选择通过提供粗粒度锁服务的方式实现。

《The Chubby lock service for loosely-coupled distributed systems》谷歌的经典介绍论文当然是必读的。


Zookeeper

Zookeeper是apache基金会下的一个软件项目,它为大型分布式计算提供开源的分布式配置服务、同步服务和命名注册,其中分布式锁也是一大功能。

想完整了解zookeeper可以参看《 ZooKeeper: Distributed Process Coordination》,本书讲解较为详细,但是需要一定的时间才可以看完。官网的介绍也可以一看《ZooKeeper Recipes and Solutions》《Redis and Zookeeper for distributed lock》这篇文章对redis和zookeeper的方案进行了比较,也值得一看

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5716172.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存