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

自己做网站怎么修改语言塑胶制品 东莞网站建设

自己做网站怎么修改语言,塑胶制品 东莞网站建设,下载共富工程app软件安装包,企业网络规划的目的和意义队列重拍 先说一下当前的加锁状态 anyLock由客户端A持有队列中是客户端B、客户端C并且客户端B现在是排在头部 那么队列重拍就是队列中某个客户端长时间没有重新申请加锁,没有刷新分数,就会被队列中挤掉。 假设这个长时间没有加锁的客户端是B。 总结 …

队列重拍

先说一下当前的加锁状态

  • anyLock由客户端A持有
  • 队列中是客户端B、客户端C
  • 并且客户端B现在是排在头部

那么队列重拍就是队列中某个客户端长时间没有重新申请加锁,没有刷新分数,就会被队列中挤掉
假设这个长时间没有加锁的客户端是B。

总结

分析代码有些啰嗦,所以先总结流程:

  • 客户端B长时间没有加锁,没有刷新时间分数
  • 客户端C加锁刷新之后,分数超过了B
  • 那就将客户端B的线程从队列中移除,客户端 C变成头部
  • 客户端B如果再次申请加锁的话,会排在C的后面
  • 这个就是队列重排

过程

恍恍惚惚的,又行进到了10:00:36秒,客户端C来进行的重新尝试进行加锁,此时客户端B他其实在这之前不知道可能因为网络原因或者是别的什么原因,可能他就是没有尝试过重新加锁

进入while true,拿到队列第一个元素的timeout时间,10:00:30 <= 10:00:36,条件成立

zrem redisson_lock_timeout:{anyLock} UUID_02:threadId_02,就从有序集合中将客户端B移除了,lpop redisson_lock_queue:{anyLock},就从队列中将客户端B也移除了
在这里插入图片描述

此时队列的第一个元素是客户端C,他的timeout时间是10:00:35 <= 10:00:36,条件成立,从有序集合以及队列中删除掉客户端C

尝试进行加锁,不成立,因为客户端A还持有着那把锁

重新排队入队,pttl anyLock = 23000毫秒
ttl = 23000毫秒
timeout = 23000毫秒 + 10:00:36 + 5000毫秒 = 10:01:04

zadd和rpush两个指令,将客户端C压入队列和有序集合中

假设此时,在10:00:38,客户端B再次尝试来进行加锁,while true退出

尝试加锁,不成立

重新尝试入队

ttl = 10:01:04 - 10:00:38 = 26000毫秒
timeout = 26000毫秒 + 10:00:38 + 5000毫秒 = 10:01:09

zadd和rpush两个指令,重新尝试入队
在这里插入图片描述

从这个里面,我们可以看到,在一个客户端刚刚加锁之后,其他的客户端来争抢这把锁,刚开始在一定时间范围之内,时间不要过长,各个客户端是可以按照公平的节奏,在队列和有序集合里面进行排序

在一定时间范围内,时间不要过长,其实队列里的元素顺序是不会改变的,各个客户端重新尝试加锁,只不过是刷新有序集合中的分数(timeout),各个客户端的timeout不断加长,但是整体顺序大致还是保持一致的

但是如果客户端A持有的锁的时间过长,timeout,这个所谓的排队是有timeout,可能会在while true死循环中将一些等待时间过长的客户端从队列和有序集合中删除,一旦删除过后,就会发生各个客户端随着自己重新尝试加锁的时间次序,重新进行一个队列中的重排,也就是排队的顺序可能会发生变化

客户端跟redis通信的网络的一个问题,延迟,各种情况都可能会发生

客户端释放锁,释放锁之后队列中的排队的客户端是如何依次获取这把锁的,是按照队列里的顺序去获取锁的

http://www.yayakq.cn/news/976694/

相关文章:

  • phpcms 手机网站临淄信息网最新招聘信息
  • 济南做网站得多少钱网站如何导入百度地图
  • 购物网站html模板下载wordpress4.8版权修改
  • 企业内部管理网站建设计划广州玩的地方有哪些地方
  • 工程造价信息价在什么网站查织梦网站会员中心模板
  • 爱站网关键词长尾挖掘积分商城平台
  • 做行业门户网站要投资多少钱湖北广域建设管理有限公司网站
  • 网站js跳转肥城做网站
  • 网站开发公司交易流程门户网站策划书
  • 凡科网站设计wordpress设置个人头像
  • 邱启良 深圳网站建设工信部网站原来是
  • 合肥网站空间wordpress开启并调用菜单
  • 有了域名如何建设网站网站建设协议 合同
  • 建站公司都是用什么建站工具南山做网站行业
  • 徐州建站模板公司如何才能让自己做的网站百度能搜
  • 建站还有前途么wordpress 中文 cms
  • 太子河网站建设2015做哪些网站致富
  • 银行需要网站开发人员吗湖南新能源公司中企动力网站建设
  • 西南交通建设集团股份有限公司网站seo是什么意思为什么要做seo
  • 做接口自动化是网站登录加密长沙同城
  • 玉树州网站建设公司江西省赣州市事业单位招聘信息
  • 网站建设项目实训wordpress类似的网站
  • 网站服务器租用价格 贴吧装潢设计公司排名
  • 建设网站公司电话号码青岛注册公司网站
  • 教育类网站怎么做房产网站开发报价
  • 腾讯云建设个人网站dw网页设计源代码
  • 德阳公司做网站wordpress运行流程
  • 天河做网站平台一元购网站开发
  • 长春个人网站制作企业邮箱怎么注册域名
  • jsp做网站教程excel表格做网站