package tech.powerjob.common.request; import tech.powerjob.common.PowerSerializable; import tech.powerjob.common.model.DeployedContainerInfo; import tech.powerjob.common.model.SystemMetrics; import lombok.Data; import java.util.List; /** * Worker 上报健康信息(worker定时发送的heartbeat) * * @author tjq * @since 2020/3/25 */ @Data public class WorkerHeartbeat implements PowerSerializable { /** * 本机地址 -> IP:port */ private String workerAddress; /** * 当前 appName */ private String appName; /** * 当前 appId */ private Long appId; /** * 当前时间 */ private long heartbeatTime; /** * 当前加载的容器(容器名称 -> 容器版本) */ private List containerInfos; /** * worker 版本信息 */ private String version; /** * 使用的通讯协议 AKKA / HTTP */ private String protocol; /** * worker tag,标识同一个 worker 下的一类集群 ISSUE: 226 */ private String tag; /** * 客户端名称 */ private String client; /** * 扩展字段 */ private String extra; /** * 是否已经超载,超载的情况下 Server 一段时间内不会再向其派发任务 */ private boolean isOverload; private int lightTaskTrackerNum; private int heavyTaskTrackerNum; private SystemMetrics systemMetrics; }