社区
谭亮的课程社区_NO_3
redis高可用分布式锁精讲
帖子详情
jvm锁与分布式锁对比
代码造就世界
2023-01-13 01:07:43
课时名称
课时知识点
jvm锁与分布式锁对比
jvm锁与分布式锁对比
...全文
186
回复
打赏
收藏
jvm锁与分布式锁对比
课时名称课时知识点jvm锁与分布式锁对比jvm锁与分布式锁对比
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
2021java互联网架构师学习路线.pdf
2021java互联网架构师学习路线
你不知道的
分布式
锁
+分布式事务面试题
分布式
锁
+分布式事务面试题 什么是
分布式
锁
? 在分布式系统之间,保证某些系统资源同步访问的一种方式。 如: 减库存的接口 多应用访问时都要对库存数据做操作,可能会造成超卖问题 可以通过
分布式
锁
解决。
分布式
锁
的使用场景? 库存操作 积分操作 钱包操作 能否基于JDK提供的
锁
实现
分布式
锁
?
JVM
锁
无法解决: 因为对应的服务会做集群
分布式
锁
有哪些实现方式? 基于数据库实现 可以通过数据库的悲观
锁
(行
锁
)实现, 在查询库存数量用于修改时,在select语句后加上 for update
本地
锁
vs
分布式
锁
详解
本地
锁
(Local Lock)指的是单机环境下使用Java/
JVM
自带的
锁
机制,实现线程之间的互斥和同步。
分布式
锁
(Distributed Lock)用于在多台服务器、多个
JVM
之间实现资源的互斥访问。📌核心场景:秒杀、库存扣减、抢红包、防止超卖、幂等控制等分布式高并发业务场景对比点本地
锁
分布式
锁
是否跨
JVM
❌ 只能本机有效✅ 支持多
JVM
、多服务器同步实现方式性能高(无网络通信)中等(涉及网络通信)可靠性高依赖外部组件(Redis 宕机
锁
失效风险)公平性支持。
分布式
锁
+分布式事务+分布式缓存
1.分布式缓存 1.1高并发下的分布式缓存 我们先从最开始的来说,我们现在一般都是B/S架构,一般都是中间挂一个服务器,后面有一个数据库。如下图: 如果客户端的访问量很大的话,那对于后端的服务来说就有一定压力了,压力主要有两个环节;一个环节是关于服务器,一个环节是我们数据库;当我们的并发量增加时,最先达到瓶颈的是我们数据库,这就会导致客户端的访问速度,访问效率降低,这时该如何解决呢?这个时候我们就需要加缓存层; 我们可以把经常访问的数据 称之为热点数据,存放在缓存中,当我们去数据库拿数据的时候,先去缓存
分布式
锁
和分布式事务
线程B 加
锁
B4 B5成功,没有获取
锁
。线程A获取
锁
,返回将
锁
存放在数据库中,此时
JVM
stw, 线程b去获取
锁
,修改
锁
,与数据库已经存在的
锁
标识进行对比。A线程获取
锁
,B线程等待,此时A线程释放
锁
,程序还未执行完成。此时B线程获取
锁
,此时A,B都将库存减到9,与业务不符。一主一从,线程A从主机获取
锁
,此时主宕机,线程B从从机也获取了
锁
。
分布式
锁
:redis
分布式
锁
, zk
分布式
锁
, 数据库做
分布式
锁
。-----------程序A---------->程序B----->----------
谭亮的课程社区_NO_3
1
社区成员
40
社区内容
发帖
与我相关
我的任务
谭亮的课程社区_NO_3
复制链接
扫一扫
分享
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章