社区
Java
帖子详情
分布式锁的一点疑惑?
坚持吧骚年
2019-03-14 08:54:10
有个分布式锁的问题有点疑惑,节点之间的调用一般是通过rpc,肯定是来一个请求就启动一个线程的,那么在被请求方这一边就转换成了jvm内部多线程访问同一个代码,那么加上sync似乎也可以解决问题?那为什么还要用redis,zk?还是说要考虑到使用nio的情况,存在一个线程处理多个io的情况?
...全文
272
4
打赏
收藏
分布式锁的一点疑惑?
有个分布式锁的问题有点疑惑,节点之间的调用一般是通过rpc,肯定是来一个请求就启动一个线程的,那么在被请求方这一边就转换成了jvm内部多线程访问同一个代码,那么加上sync似乎也可以解决问题?那为什么还要用redis,zk?还是说要考虑到使用nio的情况,存在一个线程处理多个io的情况?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
坚持吧骚年
2019-03-21
打赏
举报
回复
这个问题是我的思路进入一个误区了,分布式锁,是协调多个JVM进程访问临界资源的,而不该放在RPC远程调用这个场景下。。 感谢各位。
别闹腰不好
2019-03-15
打赏
举报
回复
分布式,肯定会有多个服务器,就会有多个JVM ,他们操作一个数据库集群。 sync 只能保证一个JVM 的线程同步,多个jvm 要保持同步,就要用到分布式锁。
大隐藏于寺
2019-03-14
打赏
举报
回复
还有这篇文章
https://yq.aliyun.com/articles/652986?spm=a2c4e.11153940.blogcont621136.21.389868ecjaCgwE
大隐藏于寺
2019-03-14
打赏
举报
回复
希望能帮到楼主>>>>
https://yq.aliyun.com/articles/621136?utm_content=m_1000010662
基于Redis的
分布式锁
安全吗?(下)
我们前面提到过,当各方的争论在激烈进行的时候,Martin几乎始终置身事外。但是Martin在这件事过去之后,把这个事件的前后经过总结成了一个很长的故事线。https在这个故事总结的最后,Martin写下了很多感性的评论……(译文对我来说最重要的
一点
在于我并不在乎在这场辩论中谁对谁错——我只关心从其他人的工作中学到的东西,以便我们能够避免重蹈覆辙,并让未来更加美好。前人已经为我们创造出了许多伟大的成果站在巨人的肩膀上,我们得以构建更棒的软件。……...
redis
分布式锁
&redisson
利用set nx ex获取锁,并设置过期时间,保存线程标示释放锁时先判断线程标示是否与自己一致,一致则删除锁利用set nx满足互斥性利用set ex保证故障时锁依然能释放,避免死锁,提高安全性利用Redis集群保证高可用和高并发特性Redisson是一个在Redis的基础上实现的Java驻内存数据网格(In-Memory Data Grid)。它不仅提供了一系列的分布式的Java常用对象,还提供了许多分布式服务,其中就包含了各种
分布式锁
的实现。
基于Redis的
分布式锁
到底安全吗?
网上有关Redis
分布式锁
的文章可谓多如牛毛了,不信的话你可以拿关键词“Redis
分布式锁
”随便到哪个搜索引擎上去搜索一下就知道了。这些文章的思路大体相近,给出的实现算法也看似合乎逻辑,但当我们着手去实现它们的时候,却发现如果你越是仔细推敲,疑虑也就越来越多。实际上,大概在一年以前,关于Redis
分布式锁
的安全性问题,在分布式系统专家Martin Kleppmann和Redis的作者antire...
分布式锁
哨兵模式_实现
分布式锁
的各种姿势
各位Javaer都对锁应该都是不陌生的,无论工作还是面试的时候,都是很常见的。不过对于大部分的小型的项目,也就是单机应用,基本都是使用Java的juc即可应对,但是随着应用规模的扩大,在分布式系统中,依靠着诸如syncronized,lock这些就无法应对了。那么本文就是来给大家唠嗑唠嗑在分布式系统中常见的几种实现
分布式锁
的方式。数据库方式实现
分布式锁
首先从大家最最熟悉的数据库来说,这里使用的是M...
【
分布式锁
】07-Zookeeper实现
分布式锁
:Semaphore、读写锁实现原理
前言 前面已经讲解了Zookeeper可重入锁的实现原理,自己对
分布式锁
也有了更深的认知。 我在公众号中发了一个疑问,相比于Redis来说,Zookeeper的实现方式要更好一些,即便Redis作者实现了RedLock算法来解决Redis集群模式下
分布式锁
的弊端,但Redis实现的
分布式锁
仍然不是那么完美。 比如有5台Redis集群,按照n/2 + 1代表获取锁成功,如果客户端A此时获取...
Java
51,410
社区成员
85,981
社区内容
发帖
与我相关
我的任务
Java
Java相关技术讨论
复制链接
扫一扫
分享
社区描述
Java相关技术讨论
java
spring boot
spring cloud
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章