public abstract class HeartPlugin extends AbstractPlugin
| 限定符和类型 | 类和说明 |
|---|---|
static interface |
HeartPlugin.TimeoutCallback |
| 限定符和类型 | 字段和说明 |
|---|---|
private static HeartPlugin.TimeoutCallback |
DEFAULT_TIMEOUT_CALLBACK |
private static org.slf4j.Logger |
LOGGER |
private long |
period |
private Map<ChannelContext,Long> |
sessionMap |
private long |
timeout |
private HeartPlugin.TimeoutCallback |
timeoutCallback |
| 限定符 | 构造器和说明 |
|---|---|
|
HeartPlugin(int timeout,
int period,
TimeUnit unit)
心跳插件
心跳插件在断网场景可能会触发TCP Retransmission,导致无法感知到网络实际状态,可通过设置timeout关闭连接
|
private |
HeartPlugin(int timeout,
int period,
TimeUnit timeUnit,
HeartPlugin.TimeoutCallback timeoutCallback)
心跳插件
心跳插件在断网场景可能会触发TCP Retransmission,导致无法感知到网络实际状态,可通过设置timeout关闭连接
|
| 限定符和类型 | 方法和说明 |
|---|---|
boolean |
beforeProcess(ChannelContext channelContext,
Packet packet) |
abstract boolean |
isHeartMessage(Packet packet)
判断当前收到的消息是否为心跳消息。
|
private void |
registerHeart(ChannelContext channelContext) |
void |
stateEvent(StateMachineEnum stateMachineEnum,
ChannelContext context,
Throwable throwable) |
afterDecode, afterRead, afterWrite, beforeEncode, beforeRead, beforeWrite, shouldAcceptprivate static final org.slf4j.Logger LOGGER
private static final HeartPlugin.TimeoutCallback DEFAULT_TIMEOUT_CALLBACK
private final Map<ChannelContext,Long> sessionMap
private final long timeout
private final long period
private final HeartPlugin.TimeoutCallback timeoutCallback
public HeartPlugin(int timeout,
int period,
TimeUnit unit)
timeout - 消息超时时间unit - 时间单位private HeartPlugin(int timeout,
int period,
TimeUnit timeUnit,
HeartPlugin.TimeoutCallback timeoutCallback)
timeout - 消息超时时间public final boolean beforeProcess(ChannelContext channelContext, Packet packet)
beforeProcess 在接口中 PluginbeforeProcess 在类中 AbstractPluginpublic final void stateEvent(StateMachineEnum stateMachineEnum, ChannelContext context, Throwable throwable)
stateEvent 在接口中 PluginstateEvent 在类中 AbstractPluginpublic abstract boolean isHeartMessage(Packet packet)
packet - 心跳包private void registerHeart(ChannelContext channelContext)
Copyright © 2023. All rights reserved.