01 2018 档案
摘要:基于zk的分布式锁: 大概原理:仍然跟基于db或者redis一致,就是注册节点,然后删除。不同的是zk因为可以对节点的事件进行监听,那么在收到节点删除的事件时,正在阻塞的线程便可以发起新的抢占锁的请求。当然,真正生产的代码一般不是这么写的,因为这样的情况下如果等待的线程非常多,那么zk向所有注册点的
阅读全文
摘要:基于redis的分布式锁: 大概原理:跟基于DB的类似,基于redis的分布式锁是争抢redis上的一个键,谁给这个键赋值了谁就抢到了锁,主要是用了redis的setnx机制,也就是set if not exists。实际一般不用setnx这个api,主要是粒度略粗,不能指定失效时间,用set(ke
阅读全文
摘要:使用场景: 某大型网站部署是分布式的,订单系统有三台服务器响应用户请求,生成订单后统一存放到order_info表;order_info表要求订单id(order_id)必须是唯一的,那么三台服务器怎么协同工作来确认order_id的唯一性呢?这时候就要用到分布式锁了。 分布式锁的要求: 在了解了使
阅读全文
摘要:摘抄:https://www.cnblogs.com/snsdzjlz320/p/5761387.html 此文讲述的比较详细,尤其是ReadCommitted 跟 RepertableRead。 ReadCommitted跟RepeatableRead的区别,就是ReadCommitted能读自己
阅读全文
摘要:历史介绍部分: 远程调用大致经过了corba、webservice、二进制跟restful四个阶段 corba时代,corba(Common Object Request Broker Architecture,通用对象请求代理架构)算是公认的所有远程调用的鼻祖,是由OMG(object mange
阅读全文
摘要:摘抄:http://blog.csdn.net/shuaihj/article/details/14163713 ACID指数据库事务正确执行的四个基本要素:原子性(Atomicity),一致性(Consistency),隔离性(Isolation),持久性(Durability)。 1、原子性 原
阅读全文
浙公网安备 33010602011771号