摘要:
分布式锁 1. 基于数据库实现分布式锁 要实现分布式锁,最简单的方式就是创建一张锁表,然后通过操作该表中的数据来实现。 当我们要锁住某个资源时,就在该表中增加一条记录,想要释放锁的时候就删除这条记录。数据库对共享资源做了唯一性约束,如果有多个请求被同时提交到数据库的话,数据库会保证只有一个操作可以成 阅读全文
摘要:
共享锁,又称之为读锁,简称S锁,当事务对数据加上读锁后,其他事务只能对该数据加读锁,不能做任何修改操作,也就是不能添加写锁。只有当数据上的读锁被释放后,其他事务才能对其添加写锁。共享锁主要是为了支持并发的读取数据而出现的,读取数据时,不允许其他事务对当前数据进行修改操作,从而避免”不可重复读”的问题 阅读全文
摘要:
1. Zookeeper 概述 Zookeeper 是一个开源的、分布式的、为分布式应用提供协调服务的 Apache 项目。 从设计模式角度来理解:Zookeeper 是一个基于观察者模式设计的分布式服务管理框架,它负责存储和管理大家都关心的数据,然后接受观察者的注册,一旦这些数据的状态发生变化,Z 阅读全文