RedisKeys.java 1.89 KB
package com.viontech.fanxing.commons.constant;

/**
 * .
 *
 * @author 谢明辉
 * @date 2021/7/12
 */

public class RedisKeys {

    /** 将要被执行的任务的 unid 有序集合,执行时间作为分数 */
    public static final String SCHEDULING_TO_BE_EXECUTED_TASK_UNID_SET = "scheduling:toBeExecutedTaskUnidSet";
    /** 将要被终止的任务的 unid 有序集合,执行时间作为分数 */
    public static final String SCHEDULING_TO_BE_TERMINATED_TASK_UNID_SET = "scheduling:toBeTerminatedTaskUnidSet";
    /** 用来存储 TaskData 的 map, taskUnid 作为 key, taskData 作为 value */
    public static final String SCHEDULING_TASK_DATA_MAP = "scheduling:taskDataMap";
    /** 用来存储 VaServerInfo 的 map, devId 作为 key, vaServerInfo 作为 value */
    public static final String SCHEDULING_VASERVER_MAP = "scheduling:vaServerMap";
    /** 用来关联任务和 vaServer 的 map, 表示任务在哪个vaServer上运行, taskUnid 作为 key, devId 作为 value */
    public static final String SCHEDULING_TASK_VASERVER_MAP = "scheduling:taskVAServerMap";

    /** 用来接收 traffic 数据的队列 */
    public static final String FORWARD_TRAFFIC_QUEUE = "forward:trafficQueue";
    /** 用来接收 flow 数据的队列 */
    public static final String FORWARD_FLOW_QUEUE = "forward:flowQueue";
    /** 用来接收 behavior 数据的队列 */
    public static final String FORWARD_BEHAVIOR_QUEUE = "forward:behaviorQueue";
    /** 用来接收所有数据的队列,用于转发 */
    public static final String FORWARD_FORWARD_QUEUE = "forward:forwardQueue";


    /**
     * 用来获取 vaServer 的心跳在 redis 中对应的 key
     *
     * @param devId vaServer 的 devId
     *
     * @return redis 中的 key
     */
    public static String getVAServerKeepAliveKey(String devId) {
        return devId == null ? "scheduling:keepalive" : "scheduling:keepalive" + ":" + devId;
    }


}