redisson与redis集群检测心跳机制原理
1、ClusterConnectionManager.scheduleClusterChangeCheck 创建延时定时调度任务
2、monitorFuture = group.schedule(new Runnable() {
EventExecutorGroup
是 Netty 中用于管理一组 EventExecutor
的组件,它类似于 EventLoopGroup
,但更加通用,可以用于执行非I/O任务和I/O任务。EventExecutorGroup
通常用于那些需要异步执行任务的场景,它提供了一个线程池来执行提交的任务。
schedule
方法是 EventExecutorGroup
接口的一部分,它允许你安排一个 Runnable
任务在未来的某个时间点执行。这个方法通常有两个重载版本:
schedule(Runnable task, long delay, TimeUnit unit)
:安排一个任务在指定的延迟后执行。schedule(Callable<T> task, long delay, TimeUnit unit)
:安排一个Callable
任务在指定的延迟后执行,并返回一个Future<T>
对象,该对象可以用来获取任务的结果。
这些方法的参数说明如下:
task
或callable
:要执行的Runnable
或Callable
任务。delay
:任务首次执行之前的延迟时间。unit
:delay
参数的时间单位。
3、processSelectedKeys() 处理网络事件
4、更新redis集群状态