当前位置: 首页 > news >正文

做促销的网站西安今日头条最新新闻

做促销的网站,西安今日头条最新新闻,宁波镇海区优秀全网seo优化,手机网站用二级目录做的弊端可重入锁总结 从实现原理以及源码的层面,真正剖析和了解到了redis分布式锁的企业级的实现,这个分布式锁实现的还是非常漂亮的,麻雀虽小,五脏俱全,分布式的可重入锁,总结一下流程 (1&#xff0…

可重入锁总结

从实现原理以及源码的层面,真正剖析和了解到了redis分布式锁的企业级的实现,这个分布式锁实现的还是非常漂亮的,麻雀虽小,五脏俱全,分布式的可重入锁,总结一下流程

(1)加锁:在redis里设置hash数据结构,生存周期是30000毫秒
(2)维持加锁:代码里一直加锁,redis里的key会一直保持存活,后台每隔10秒的定时任务(watchdog)不断的检查,只要客户端还在加锁,就刷新key的生存周期为30000毫秒
(3)可重入锁:同一个线程可以多次加锁,就是在hash数据结构中将加锁次数累加1
(4)锁互斥:不同客户端,或者不同线程,尝试加锁陷入死循环等待
(5)手动释放锁:可重入锁自动递减加锁次数,全部释放锁之后删除锁key
(6)宕机自动释放锁:如果持有锁的客户端宕机了,那么此时后台的watchdog定时调度任务也没了,不会刷新锁key的生存周期,此时redis里的锁key会自动释放
(7)尝试加锁超时:在指定时间内没有成功加锁就自动退出死循环,标识本次尝试加锁失败
(8)超时锁自动释放:获取锁之后,在一定时间内没有手动释放锁,则redis里的key自动过期,自动释放锁

这8大机制,组合在一起,才是构成了一个企业级的基于redis的分布式锁的方案

redisson基于redis实现的分布式锁的核心原理给搞通透了,后续我们再看其他的锁,包括公平锁、读写锁、MultiLock、RedLock这一系列的源码的时候,就比较得心应手了。

redis加锁,本质,还是在redis集群中挑选一个master实例来加锁,master -> slave,实现了高可用的机制,如果master宕机,slave会自动切换为master

假设客户端刚刚在master写入一个锁,此时发生了master的宕机,但是master还没来得及将那个锁key异步同步到slave,slave就切换成了新的master。此时别的客户端在新的master上也尝试获取同一个锁,会成功获取锁

此时两个客户端,都会获取同一把分布式锁,可能有的时候就会导致一些数据的问题

redisson的分布式锁,隐患主要就是在这里

预告

下一章开始剖析公平锁是如何实现排队以及加锁逻辑的

http://www.dinnco.com/news/62917.html

相关文章:

  • 国家知识产权局什么级别长沙专业竞价优化首选
  • flash可以做网站百度一下网址是多少
  • 网站cms在线识别seo优化排名公司
  • 深圳网站建设价钱上海已经开始二次感染了
  • 网站制公司搜索广告和信息流广告区别
  • 工程建设信息都在哪个网站发布廊坊seo排名收费
  • 建设商城网站的书籍钱注册商标查询官网入口
  • 南宁h5建站百度seo软件是做什么的
  • 国外免费推广网站厦门百度推广开户
  • 精品网站建设比较好软文推广怎么写
  • 荥阳做网站2023年5月疫情爆发
  • 门户网站制作定制广告投放这个工作难不难做
  • 网站建设公司的转型关键词优化排名平台
  • 淘宝客代理网站怎么做重庆网站seo技术
  • 网站建设进展推进表哪里有正规的电商培训班
  • 微网站模板建设的选择如何网络营销
  • 烟台建网站公司价格网络营销策划ppt范例
  • 网站访客统计代码摘抄一篇新闻
  • 无锡那家网络公司做网站好成都网络营销公司
  • 观澜小学 网站建设2345导航网址
  • 提高手机性能的黑科技软件百度seo推广计划类型包括
  • 给被k的网站做友链电商网站前端页面内容编写
  • 网站开发语言有什么要求百度投稿平台
  • 平台和网站有什么区别策划公司是做什么的
  • 怎么给网站做绿标百度关键词优化有效果吗
  • 江门手工外发加工网排名优化软件点击
  • 响应式网站底部怎么做上海网站营销seo方案
  • 台州免费建站成都达洱狐网络科技有限公司
  • 网站开发和软件开发哪个好杭州百度推广
  • 网络是干什么的杭州seo搜索引擎优化