WangHan
2024-09-12 d5855a4926926698b740bc6c7ba489de47adb68b
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
package tech.powerjob.common.enums;
 
import lombok.AllArgsConstructor;
import lombok.Getter;
 
/**
 * TaskTracker 行为枚举
 *
 * @author tjq
 * @since 2024/2/24
 */
@Getter
@AllArgsConstructor
public enum TaskTrackerBehavior {
 
    /**
     * 普通:不特殊处理,参与集群计算,会导致 TaskTracker 负载比常规节点高。适用于节点数不那么多,任务不那么繁重的场景
     */
    NORMAL(1),
    /**
     * 划水:只负责管理节点,不参与计算,稳定性最优。适用于节点数量非常多的大规模计算场景,少一个计算节点来换取稳定性提升
     */
    PADDLING(11)
    ;
 
 
    private final Integer v;
 
    public static TaskTrackerBehavior of(Integer type) {
 
        if (type == null) {
            return NORMAL;
        }
 
        for (TaskTrackerBehavior t : values()) {
            if (t.v.equals(type)) {
                return t;
            }
        }
        return NORMAL;
    }
}