@Autowired private RedisTemplate<String, Object> redisTemplate; /** * 获取分布式锁 - 过期时间 * @param key * @param expireTime 毫秒 * @return */ public Object get... ...
分类:
其他好文 时间:
2019-11-25 18:46:33
阅读次数:
48
调用方法: 运行结果: 源码下载地址: 链接:https://pan.baidu.com/s/1rgyoxf9lLTjDIWX-Ro5o-Q 提取码:ke31 ...
分类:
其他好文 时间:
2019-11-25 13:34:28
阅读次数:
46
Java分布式:分布式锁之Redis实现 分布式锁系列教程重点分享锁实现原理 Redis锁原理 核心命令 Redis分布式锁的原理是基于其SETNX命令,我们来看SETNX的解释。 实现过程 使用SETNX完成同步锁的流程及事项如下: 图解 参考资料 https://segmentfault.com ...
分类:
编程语言 时间:
2019-11-23 12:32:04
阅读次数:
73
最近我们有个服务经常出现存储的数据出现重复,首先上一个系统流程图: 用户通过http请求可以通知任务中心结束掉自己发送的任务,这时候任务中心会通过MQ通知结束服务去结束任务保存数据,由于任务结束数据计算保存有一定延时,所以存在用户短时间内多次结束同一个任务,这时候就会导致我们结束服务对同一个任务保存 ...
分类:
其他好文 时间:
2019-11-22 19:22:45
阅读次数:
80
现在的架构很多,各种各样的,如高并发架构、异地多活架构、容器化架构、微服务架构、高可用架构、弹性化架构等,还有和这些架构相关的管理型的技术方法,如 DevOps、应用监控、自动化运维、SOA 服务治理、去 IOE 等等,还有很多。 那什么是分布式系统?分布式系统是支持分布式处理的软件系统,是由通信网 ...
分类:
其他好文 时间:
2019-11-19 17:08:22
阅读次数:
95
分布式锁介绍 分布式执行一些不需要同时执行的复杂任务,curator利用zk的特质,实现了这个选举过程。其实就是利用了多个zk客户端在同一个位置建节点,只会有一个客户端建立成功这个特性。来实现同一时间,只会选择一个客户端执行任务 代码 InterProcessMutex 是一个可重入的排他锁,获取锁 ...
分类:
其他好文 时间:
2019-11-18 12:29:56
阅读次数:
84
前言 记录下ZK客户端的使用学习,初步想法是从几个方面来记录 1. 如何开始使用及api介绍(创建会话以及增删查改) 2. 异步调用 3. 事件 4. Master选举 5. 分布式锁、计数器、Barrier 版本说明 zk版本: curator版本: 常用API介绍 1.创建会话 说一下retry ...
一 部署ETCD集群 1.1 安装ETCD etcd 是基于 Raft 的分布式 key-value 存储系统,由 CoreOS 开发,常用于服务发现、共享配置以及并发控制(如 leader 选举、分布式锁等)。kubernetes 使用 etcd 存储所有运行数据。 1 etcd 是基于 Raft ...
分类:
Web程序 时间:
2019-11-15 12:06:18
阅读次数:
102
管理跨进程的锁: 以下只是个人理解,如果有疑问请参考官方文档 https://xueyuanjun.com/post/19506.html#bkmrk-%E5%8E%9F%E5%AD%90%E9%94%81 $key = 'test:'.$uid;// 在控制器中,给这个key上锁10秒钟,如果不主 ...
分类:
其他好文 时间:
2019-11-15 12:00:59
阅读次数:
484
1.业务唯一编号: 当系统接收到唯一的no时,先判断no对应的状态是否处理过,处理过则直接返回;防止并发的情况,需要在判断处理的地方加锁, 多系统部署,需要加分布式锁 或者在事务中使用 select for update 获取行级锁,事务提交后会自动释放行级锁 或者使用乐观锁 : update t_ ...
分类:
其他好文 时间:
2019-11-13 10:36:24
阅读次数:
154