redis_watchDog机制

news2024/12/24 7:31:38

文章目录

    • 介绍
    • 机制介绍
      • 任务开始
      • 任务释放

介绍

redis的watchDog机制实现了超时续约的功能,简单来说就是在获取锁成功以后,开启一个定时任务,这个任务每隔一段时间(relaseTime / 3),重置超时时间,避免的因业务阻塞导致锁过早释放。

机制介绍

任务开始

从获取锁得到future开始介绍:
在这里插入图片描述

如果ttlRemaining == null表示获取锁成功,这时候需要我们解决有效期的问题,就执行以下方法
this.scheduleExpirationRenewal(threadId);实现自动更新,续期的功能。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

所以最后entry里放入两个东西,一个是线程id,另一个是定时任务。

在这里插入图片描述

任务释放

关于任务释放的时机:
在这里插入图片描述
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1601604.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

比特币L2项目主网密集上线:新业态背后的挑战与机遇

随着加密货币行业的快速发展,比特币Layer 2(以下简称L2)项目的主网密集上线成为了近期的热点话题。这一潮流不仅是对比特币网络扩展的重要里程碑,也为新的商业模式和生态系统带来了无限可能。然而,随之而来的是各种挑战…

支付宝支付之SpringBoot整合支付宝入门

支付宝支付 对接流程 申请阿里支付官方企业账号配置应用签约产品获取RSAKey(非对称加密)必须获得两个加密串:一个公钥,一个密钥SDK功能开发业务对接支付回调支付组件 核心所需的参数 APPID商家私钥支付宝公钥支付回调地址网关…

实战纪实 | 学工平台平行越权

一.账号密码可爆破(无验证码) 1.学校学工平台用于请假跟每日上报健康信息,登录框如下: 2.经过测试发现这里不存在验证码验证,并且存在初始密码,可以尝试使用默认密码爆破账号: 3.经测试&#x…

【无标题】PHP-parse_str变量覆盖

[题目信息]: 题目名称题目难度PHP-parse_str变量覆盖1 [题目考点]: 变量覆盖指的是用我们自定义的参数值替换程序原有的变量值,一般变量覆盖漏洞需要结合程序的其它功能来实现完整的攻击。 经常导致变量覆盖漏洞场景有:$$&…

自动化测试Selenium(3)

目录 WebDriver相关API 打印信息 打印title 打印url 浏览器的操作 浏览器最大化 设置浏览器的宽,高 操作浏览器的前进, 后退, 刷新 控制浏览器滚动条 键盘事件 键盘单键用法 键盘组合按键用法 鼠标事件 WebDriver相关API 打印信息 打印title 即打印该网址的标题.…

护网行动 | 蓝队应急响应流程概述

了解蓝队应急响应的流程 应急响应通常是指为了应对各种意外事件发生前所做的准备,以及在意外事件发生后所采取的措施。 网络安全应急响应是指对已经发生或可能发送的安全事件进行监控、分析、协调、处理、保护资产安全。 网络安全应急响应主要是为了让人们对网络安全…

idea2023专业版安装破解+maven配置教程

前言 上一篇文章已经介绍了maven在Win10系统的安装配置教程。基于Win10的maven配置环境,本篇文章将介绍idea2023的安装破解教程及maven在idea2023的配置教程(同时会将maven在idea2023的配置教程内容补充至上一篇文章)。 一、idea2023下载安…

【学习】jemter中如何高效使用正则表达式

在Jemter的世界里,正则表达式无疑是一把锐利的剑,它可以帮助我们轻松地解决许多问题。在Jemter的性能测试过程中,我们常常需要提取响应中的某些数据,以便在后续的请求中使用。这时,正则表达式就派上用场了。通过学习如…

Linux进阶篇:Centos7搭建smb服务

Centos7搭建smb服务 1 smb介绍 Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成。SMB(Server Messages Block,信息服务块)是一种在局域网上共享文件和打印机的一种通信协议,它为局域…

C语言学习笔记之指针(二)

指针基础知识:C语言学习笔记之指针(一)-CSDN博客 目录 字符指针 代码分析 指针数组 数组指针 函数指针 代码分析(出自《C陷阱和缺陷》) 函数指针数组 指向函数指针数组的指针 回调函数 qsort() 字符指针 一…

内网隧道技术总结

隧道技术解决的是网络通信问题,因为在内网环境下,我们不同的内网主机管理员会进行不同的网络配置,我们就需要使用不同的方式去控制我们的内网主机。隧道技术是一个后渗透的过程,是可以是我们已经取得了一定的权限,在这…

元数据管理Atlas

文章目录 一、Atlas概述1、Atlas入门2、Atlas架构原理 二、Atlas安装1、安装环境准备1.1 安装Solr-7.7.31.2 Atlas2.1.0安装 2、Atlas配置2.1 Atlas集成Hbase2.2 Atlas集成Solr2.3 Atlas集成Kafka2.4 Atlas Server配置2.5 Kerberos相关配置2.6 Atlas集成Hive 3、Atlas启动 三、…

一次配置Docker环境的完整记录

一次配置Docker环境的完整记录 Docker环境搭建报错与解决报错一报错二报错三 Docker环境搭建 本节介绍了一次配置docker环境的完整记录: 编写Dockerfile文件: FROM pytorch/pytorch:1.10.0-cuda11.3-cudnn8-develRUN rm /etc/apt/sources.list.d/cuda.l…

【每日力扣】15. 三数之和与11. 盛最多水的容器

🔥 个人主页: 黑洞晓威 😀你不必等到非常厉害,才敢开始,你需要开始,才会变的非常厉害 15. 三数之和 给你一个整数数组 nums ,判断是否存在三元组 [nums[i], nums[j], nums[k]] 满足 i ! j、i ! k 且 j ! k…

安全认证Kerberos详解

文章目录 一、Kerberos入门与使用1、Kerberos概述1.1 什么是Kerberos1.2 Kerberos术语1.3 Kerberos认证原理 2、Kerberos安装2.1 安装Kerberos相关服务2.2 修改配置文件2.3 其他配置与启动 3、Kerberos使用概述3.1 Kerberos数据库操作3.2 Kerberos认证操作 二、Hadoop Kerberos…

10个常用的损失函数及Python代码实现

本文深入理解并详细介绍了10个常用的损失函数及Python代码实现。 什么是损失函数? 损失函数是一种衡量模型与数据吻合程度的算法。损失函数测量实际测量值和预测值之间差距的一种方式。损失函数的值越高预测就越错误,损失函数值越低则预测越接近真实值…

Day99:云上攻防-云原生篇K8s安全实战场景攻击Pod污点Taint横向移动容器逃逸

目录 云原生-K8s安全-横向移动-污点Taint 云原生-K8s安全-Kubernetes实战场景 知识点: 1、云原生-K8s安全-横向移动-污点Taint 2、云原生-K8s安全-Kubernetes实战场景 云原生-K8s安全-横向移动-污点Taint 如何判断实战中能否利用污点Taint? 设置污点…

【项目实战】记录一次PG数据库迁移至GaussDB测试(上)

目录 一、说明 1.1、参考文档 1.2、注意事项 1.3、环境基本情况 二、GaussDB新环境安装 2.1 配置操作环境变量 2.1.1 关闭防火墙 步骤1 执行以下命令,检查防火墙是否关闭。 步骤2 执行以下命令,关闭防火墙并禁止开机启动。 步骤3 修改/etc/sel…

济南大学微软校区教室OLED透明屏项目报告

济南大学微软校区教室OLED透明屏项目报告 产品:55寸OLED透明屏 项目时间:2024年04月 项目地点:山东济南 一、项目概述 本次项目旨在为济南大学微软校区的教室配备先进的55寸OLED透明屏,以满足现代化教学需求,提升教学…

虹科Pico汽车示波器 | 免拆诊断案例 | 2016款保时捷911 GT3 RS车发动机异响

一、故障现象 一辆2016款保时捷911 GT3 RS车,搭载4.0 L水平对置发动机(型号为MA176),累计行驶里程约为4.2万km。车主反映,1星期前上过赛道,现在发动机有“哒哒”异响。 二、故障诊断 接车后试车&#xff…