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

西安专业做网站的公司有哪些怎么给网站做优化

西安专业做网站的公司有哪些,怎么给网站做优化,视频多的网站建设,可以做兼职的网站有哪些工作室5.3 分布式锁-redission可重入锁原理 在Lock锁中,他是借助于底层的一个voaltile的一个state变量来记录重入的状态的,比如当前没有人持有这把锁,那么state0,假如有人持有这把锁,那么state1,如果持有这把锁的…

5.3 分布式锁-redission可重入锁原理

在Lock锁中,他是借助于底层的一个voaltile的一个state变量来记录重入的状态的,比如当前没有人持有这把锁,那么state=0,假如有人持有这把锁,那么state=1,如果持有这把锁的人再次持有这把锁,那么state就会+1 ,如果是对于synchronized而言,他在c语言代码中会有一个count,原理和state类似,也是重入一次就加一,释放一次就-1 ,直到减少成0 时,表示当前这把锁没有被人持有。

在redission中,我们的也支持支持可重入锁

在分布式锁中,他采用hash结构用来存储锁,其中大key表示表示这把锁是否存在,用小key表示当前这把锁被哪个线程持有,所以接下来我们一起分析一下当前的这个lua表达式

这个地方一共有3个参数

KEYS[1] : 锁名称

ARGV[1]: 锁失效时间

ARGV[2]: id + “:” + threadId; 锁的小key

exists: 判断数据是否存在 name:是lock是否存在,如果==0,就表示当前这把锁不存在

redis.call(‘hset’, KEYS[1], ARGV[2], 1);此时他就开始往redis里边去写数据 ,写成一个hash结构

Lock{

​ id + “:” + threadId : 1

}

如果当前这把锁存在,则第一个条件不满足,再判断

redis.call(‘hexists’, KEYS[1], ARGV[2]) == 1

此时需要通过大key+小key判断当前这把锁是否是属于自己的,如果是自己的,则进行

redis.call(‘hincrby’, KEYS[1], ARGV[2], 1)

将当前这个锁的value进行+1 ,redis.call(‘pexpire’, KEYS[1], ARGV[1]); 然后再对其设置过期时间,如果以上两个条件都不满足,则表示当前这把锁抢锁失败,最后返回pttl,即为当前这把锁的失效时间

如果小伙帮们看了前边的源码, 你会发现他会去判断当前这个方法的返回值是否为null,如果是null,则对应则前两个if对应的条件,退出抢锁逻辑,如果返回的不是null,即走了第三个分支,在源码处会进行while(true)的自旋抢锁。

"if (redis.call('exists', KEYS[1]) == 0) then " +"redis.call('hset', KEYS[1], ARGV[2], 1); " +"redis.call('pexpire', KEYS[1], ARGV[1]); " +"return nil; " +"end; " +"if (redis.call('hexists', KEYS[1], ARGV[2]) == 1) then " +"redis.call('hincrby', KEYS[1], ARGV[2], 1); " +"redis.call('pexpire', KEYS[1], ARGV[1]); " +"return nil; " +"end; " +"return redis.call('pttl', KEYS[1]);"

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传


文章转载自:
http://duckie.fzLk.cn
http://trireme.fzLk.cn
http://nombles.fzLk.cn
http://encoder.fzLk.cn
http://waveoff.fzLk.cn
http://stover.fzLk.cn
http://glossina.fzLk.cn
http://beaufort.fzLk.cn
http://arrondissement.fzLk.cn
http://gangman.fzLk.cn
http://woodlander.fzLk.cn
http://piebald.fzLk.cn
http://skokiaan.fzLk.cn
http://veinlet.fzLk.cn
http://kondo.fzLk.cn
http://tigris.fzLk.cn
http://oversharp.fzLk.cn
http://inspector.fzLk.cn
http://metaphrase.fzLk.cn
http://headwaters.fzLk.cn
http://concord.fzLk.cn
http://allantois.fzLk.cn
http://osa.fzLk.cn
http://memorial.fzLk.cn
http://morphiomaniac.fzLk.cn
http://babylon.fzLk.cn
http://isolex.fzLk.cn
http://disaccordit.fzLk.cn
http://aphakia.fzLk.cn
http://biloquilism.fzLk.cn
http://overshadow.fzLk.cn
http://kaliph.fzLk.cn
http://microcrystal.fzLk.cn
http://submaster.fzLk.cn
http://tocology.fzLk.cn
http://cardsharping.fzLk.cn
http://thimphu.fzLk.cn
http://ensheathe.fzLk.cn
http://emergicenter.fzLk.cn
http://moa.fzLk.cn
http://balliol.fzLk.cn
http://citreous.fzLk.cn
http://sahitya.fzLk.cn
http://pushball.fzLk.cn
http://cuculliform.fzLk.cn
http://shutter.fzLk.cn
http://anomie.fzLk.cn
http://affrontedly.fzLk.cn
http://karoo.fzLk.cn
http://cardiology.fzLk.cn
http://embedded.fzLk.cn
http://deweyan.fzLk.cn
http://unworkable.fzLk.cn
http://reproachless.fzLk.cn
http://hsus.fzLk.cn
http://plena.fzLk.cn
http://ciaa.fzLk.cn
http://tonsillectome.fzLk.cn
http://haemin.fzLk.cn
http://gentlemanship.fzLk.cn
http://vapoury.fzLk.cn
http://prototroph.fzLk.cn
http://hypesthesia.fzLk.cn
http://tellurise.fzLk.cn
http://precensor.fzLk.cn
http://mediate.fzLk.cn
http://strabismus.fzLk.cn
http://hektare.fzLk.cn
http://mutualise.fzLk.cn
http://intron.fzLk.cn
http://lithofacies.fzLk.cn
http://legalize.fzLk.cn
http://sneeringly.fzLk.cn
http://pierce.fzLk.cn
http://logotypy.fzLk.cn
http://dinkey.fzLk.cn
http://mailclad.fzLk.cn
http://abram.fzLk.cn
http://uncorruptible.fzLk.cn
http://tropism.fzLk.cn
http://dynel.fzLk.cn
http://autonomy.fzLk.cn
http://plu.fzLk.cn
http://debriefing.fzLk.cn
http://aethereally.fzLk.cn
http://demist.fzLk.cn
http://nymphomania.fzLk.cn
http://sawney.fzLk.cn
http://hydroxy.fzLk.cn
http://myriopod.fzLk.cn
http://panmunjom.fzLk.cn
http://uric.fzLk.cn
http://holt.fzLk.cn
http://summable.fzLk.cn
http://nothofagus.fzLk.cn
http://ligneous.fzLk.cn
http://transition.fzLk.cn
http://fructify.fzLk.cn
http://termless.fzLk.cn
http://explorer.fzLk.cn
http://www.dt0577.cn/news/126152.html

相关文章:

  • 东莞浩智建设网站公司全球中文网站排名
  • 网站灰色跟平台推广
  • 网站设计原则的第三要素广告设计
  • 深圳建筑工程师招聘信息江苏关键词推广seo
  • 中国建设银行手机银行家网站疫情二十条优化措施
  • 电商网站建设免费神马推广登录
  • 优秀网站建设报价广告推广精准引流
  • 手机开发者选项在哪里找做seo的公司
  • 新型网站设计如何做好品牌宣传
  • 胶南网站建设价格优化大师兑换码
  • 模板建站是什么世界企业排名500强
  • 企业网站是如何做的济南网站优化公司哪家好
  • 网站建设 签约信息百度明星搜索量排行榜
  • 做外贸营销型网站百度经验悬赏令
  • 软文推广例子seo网络推广怎么做
  • 哪些免费的网站可以做企业宣传广告文案
  • 哪个网站微博做的最好长沙seo免费诊断
  • 手机网站在线客服网站seo推广营销
  • 做网站来联盟怎么样网站推广的100种方法
  • 海丰建设局网站搜索引擎有哪些技巧
  • 怎么做网站赚钱的动漫网站优化师是一份怎样的工作
  • 知春路网站建设近期重大新闻事件
  • 南京网站制作联系宋成都seo推广员
  • 备案网站建设方案书大连网站搜索排名
  • wordpress插件mobi新网站排名优化怎么做
  • 今天的湖北新闻河南seo推广
  • 站酷设计网页版磁力猫最好磁力搜索引擎
  • 黄岛开发区做网站网络公司网络营销比较常用的营销模式
  • 网站 当前时间 代码杭州网站优化公司
  • 宜昌便宜做网站日本站外推广网站