redisson与redis集群检测心跳机制原理

redisson与redis集群检测心跳机制原理

1、ClusterConnectionManager.scheduleClusterChangeCheck 创建延时定时调度任务

2、monitorFuture = group.schedule(new Runnable() {

EventExecutorGroup 是 Netty 中用于管理一组 EventExecutor 的组件,它类似于 EventLoopGroup,但更加通用,可以用于执行非I/O任务和I/O任务。EventExecutorGroup 通常用于那些需要异步执行任务的场景,它提供了一个线程池来执行提交的任务。

schedule 方法是 EventExecutorGroup 接口的一部分,它允许你安排一个 Runnable 任务在未来的某个时间点执行。这个方法通常有两个重载版本:

  1. schedule(Runnable task, long delay, TimeUnit unit):安排一个任务在指定的延迟后执行。
  2. schedule(Callable<T> task, long delay, TimeUnit unit):安排一个 Callable 任务在指定的延迟后执行,并返回一个 Future<T> 对象,该对象可以用来获取任务的结果。

这些方法的参数说明如下:

  • taskcallable:要执行的 RunnableCallable 任务。
  • delay:任务首次执行之前的延迟时间。
  • unitdelay 参数的时间单位。

3、processSelectedKeys() 处理网络事件

4、更新redis集群状态

相关推荐
woxihuan1234561 天前
SQL删除数据时存在依赖关系_设置外键级联删除ON DELETE
jvm·数据库·python
东风破1371 天前
DM8达梦共享存储集群DSC搭建步骤
数据库·学习·dm达梦数据库
雪碧聊技术1 天前
当数据库字段数大于Java实体类属性数时,MyBatis还能映射成功吗?一文详解
数据库·自动映射·mybatis映射机制·java实体类·宽容映射机制
Jetev1 天前
如何确定SQL字段是否为空_使用IS NULL与IS NOT NULL
jvm·数据库·python
摇滚侠1 天前
Redis 秒杀功能 超卖问题 一人一单问题 分布式锁 精彩!精彩!
redis·分布式·bootstrap
m0_702036531 天前
mysql如何处理不走索引的OR查询_使用UNION ALL优化重写
jvm·数据库·python
庞轩px1 天前
第七篇:Spring扩展点——如何优雅地介入Bean的创建流程
java·后端·spring·bean·aware·扩展点
代钦塔拉1 天前
Qt4 vs Qt5 带参数信号槽的连接方式详解
开发语言·数据库·qt
2401_846339561 天前
MySQL在云环境如何选择存储类型_SSD与高性能云盘配置建议
jvm·数据库·python
zhaoyong2221 天前
SQL如何统计每个用户的首次行为时间_MIN聚合与分组
jvm·数据库·python