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

个人网站备案如何取名称wordpress怎么中文字体

个人网站备案如何取名称,wordpress怎么中文字体,购物有哪些平台,沈阳男科女医生在 Redis 中,Watch Dog(看门狗)机制主要用于实现分布式锁的自动续期(如 Redisson 的 RedLock 实现)。其核心目的是确保当业务逻辑执行时间超过锁的初始过期时间(leaseTime)时,锁不会…

在 Redis 中,Watch Dog(看门狗)机制主要用于实现分布式锁的自动续期(如 Redisson 的 RedLock 实现)。其核心目的是确保当业务逻辑执行时间超过锁的初始过期时间(leaseTime)时,锁不会因过期而被其他线程/进程误获取。以下是 Watch Dog 判断当前线程是否持有锁并进行续租的核心逻辑:


1. 锁的唯一标识符

当线程成功获取锁时,Redis 中存储的锁值(Value)会包含一个 客户端唯一标识符(如 UUID)线程 ID。例如:

SET my_lock "客户端UUID:线程ID" NX PX 30000

这一标识符由客户端生成,确保全局唯一性,并保存在客户端内存中。


2. Watch Dog 的续租条件

Watch Dog 通过以下步骤判断当前线程是否持有锁:

  1. 检查本地锁状态
    客户端在内存中维护锁的持有状态。如果当前线程已释放锁(主动调用 unlock()),Watch Dog 会直接停止续租。

  2. 验证 Redis 中的锁值
    Watch Dog 定期(如每 10 秒)向 Redis 发送一个 原子性 Lua 脚本,执行以下操作:

    if redis.call("GET", KEYS[1]) == ARGV[1] thenredis.call("PEXPIRE", KEYS[1], ARGV[2])return 1
    elsereturn 0
    end
    
    • KEYS[1]:锁的名称(如 my_lock)。
    • ARGV[1]:预期的锁值(客户端 UUID + 线程 ID)。
    • ARGV[2]:新的过期时间(如 30000 毫秒)。

    只有当 Redis 中锁的值与客户端保存的标识符一致时,才会续期锁的过期时间。


3. 关键设计要点

  • 原子性操作
    通过 Lua 脚本确保 “检查锁值”“续期锁” 是原子操作,避免并发问题。

  • 本地状态与 Redis 状态的强一致性

    • 若 Redis 中的锁已被其他客户端抢占(值不匹配),Watch Dog 立即停止续租,客户端会抛出异常通知业务逻辑。
    • 若客户端崩溃,Watch Dog 停止运行,锁最终因过期自动释放,避免死锁。
  • 可重入锁的支持
    如果锁是重入的(同一线程多次获取锁),客户端内部通过计数器跟踪重入次数。Watch Dog 只在锁被完全释放(计数器归零)时停止续租。


4. 流程总结

  1. 客户端获取锁成功后,启动 Watch Dog 定时任务。
  2. Watch Dog 定期检查本地锁状态,若未释放则触发续租。
  3. 通过 Lua 脚本验证 Redis 中的锁值是否仍属于当前线程。
  4. 验证通过则续期锁的过期时间,否则放弃续租并处理锁失效逻辑。

5. 注意事项

  • 网络分区风险
    若客户端与 Redis 发生长时间网络分区,Watch Dog 可能无法续租,锁最终会过期。此时业务需自行处理锁失效后的逻辑(如回滚)。

  • 性能开销
    Watch Dog 的定时续期会增加 Redis 的负载,需合理设置续期间隔(如 Redisson 默认 lockWatchdogTimeout=30秒)。

通过上述机制,Watch Dog 在保证安全性的前提下,实现了分布式锁的自动续期,确保长任务执行期间锁的持有权不被意外释放。

http://www.dtcms.com/a/506323.html

相关文章:

  • 龙岩有什么招聘本地网站房地产新闻最近
  • 找人做网站需要什么条件信息服务平台怎么赚钱
  • 海口房地产网站建设网页制作三剑客不包括
  • aspsqlserver做网站嘉兴网站排名优化费用
  • 网站流量与广告费各大网站的名字
  • 上海建设主管部门网站现代简约风格装修案例
  • 如何创建网站的快捷方式默认开启评论 wordpress
  • 做英文网站用什么字体好做网站应该选择怎样的公司
  • 广州网站优化方式镇江市城市建设投资公司官方网站
  • 新乡移动网站建设哪做网站便宜
  • 可以推广网站想做外贸怎么找客户
  • 免费搭建公司网站浙江建设信息港网站考试成绩查询
  • 婚纱网站目录优化seo百度排名优化
  • 北京建站模板制作wordpress wmv
  • 深圳网站建设 信科便宜成都建设网站公司简介
  • 广源建设集团有限公司网站wordpress响应式主题always
  • 广东网站快速备案南阳市建设局网站
  • 昆明做网站建设怎么样济南百度推广电话
  • 从代码角度分析网站怎么做自动做标题网站
  • 网站推广前景怎么样二手房交易网站开发源码
  • 如何别人看自己做的网站百度收录要多久
  • 企业顺德网站建设wordpress系统密码忘记
  • ci框架的网站wordpress 标签链接
  • 发外链的论坛网站网站多久才能做起来
  • 有口碑的大连网站建设珠海品牌网站设计
  • 网站 设计公司 温州免费静态网页模板下载
  • 重庆市建筑工程信息官方网站拼多多推广关键词首选帝搜软件
  • 青岛建站服务ui设计师岗位职责
  • 网站设计实训报告小米14系列发布会微博手机影像年
  • 自建站系统站长工具 网站改版