From 2166ec93624b6b9d2f5702d30b9f5030a37d72b5 Mon Sep 17 00:00:00 2001 From: 648540858 <648540858@qq.com> Date: 星期三, 08 十二月 2021 20:56:07 +0800 Subject: [PATCH] 解决Redis服务出于安全会禁用CONFIG命令后服务不可用的问题 --- src/main/java/com/genersoft/iot/vmp/gb28181/event/offline/OfflineEventListener.java | 37 ++++++++++++++++++++++--------------- 1 files changed, 22 insertions(+), 15 deletions(-) diff --git a/src/main/java/com/genersoft/iot/vmp/gb28181/event/offline/OfflineEventListener.java b/src/main/java/com/genersoft/iot/vmp/gb28181/event/offline/OfflineEventListener.java index faa89fa..0f5604c 100644 --- a/src/main/java/com/genersoft/iot/vmp/gb28181/event/offline/OfflineEventListener.java +++ b/src/main/java/com/genersoft/iot/vmp/gb28181/event/offline/OfflineEventListener.java @@ -1,5 +1,6 @@ package com.genersoft.iot.vmp.gb28181.event.offline; +import com.genersoft.iot.vmp.conf.UserSetup; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; @@ -11,10 +12,10 @@ import com.genersoft.iot.vmp.utils.redis.RedisUtil; /** - * @Description: 绂荤嚎浜嬩欢鐩戝惉鍣紝鐩戝惉鍒扮绾垮悗锛屼慨鏀硅澶囩鍦ㄧ嚎鐘舵�併�� 璁惧绂荤嚎鏈変袱涓潵婧愶細 - * 1銆佽澶囦富鍔ㄦ敞閿�锛屽彂閫佹敞閿�鎸囦护锛寋@link com.genersoft.iot.vmp.gb28181.transmit.request.impl.RegisterRequestProcessor} + * @description: 绂荤嚎浜嬩欢鐩戝惉鍣紝鐩戝惉鍒扮绾垮悗锛屼慨鏀硅澶囩鍦ㄧ嚎鐘舵�併�� 璁惧绂荤嚎鏈変袱涓潵婧愶細 + * 1銆佽澶囦富鍔ㄦ敞閿�锛屽彂閫佹敞閿�鎸囦护锛寋@link com.genersoft.iot.vmp.gb28181.transmit.event.request.impl.RegisterRequestProcessor} * 2銆佽澶囨湭鐭ュ師鍥犵绾匡紝蹇冭烦瓒呮椂,{@link com.genersoft.iot.vmp.gb28181.event.offline.OfflineEventListener} - * @author: songww + * @author: swwheihei * @date: 2020骞�5鏈�6鏃� 涓嬪崍1:51:23 */ @Component @@ -28,6 +29,9 @@ @Autowired private RedisUtil redis; + @Autowired + private UserSetup userSetup; + @Override public void onApplicationEvent(OfflineEvent event) { @@ -35,24 +39,27 @@ logger.debug("璁惧绂荤嚎浜嬩欢瑙﹀彂锛宒eviceId锛�" + event.getDeviceId() + ",from:" + event.getFrom()); } - String key = VideoManagerConstants.KEEPLIVEKEY_PREFIX + event.getDeviceId(); + String key = VideoManagerConstants.KEEPLIVEKEY_PREFIX + userSetup.getServerId() + "_" + event.getDeviceId(); switch (event.getFrom()) { - // 蹇冭烦瓒呮椂瑙﹀彂鐨勭绾夸簨浠讹紝璇存槑redis涓凡鍒犻櫎锛屾棤闇�澶勭悊 - case VideoManagerConstants.EVENT_OUTLINE_TIMEOUT: - break; - // 璁惧涓诲姩娉ㄩ攢瑙﹀彂鐨勭绾夸簨浠讹紝闇�瑕佸垹闄edis涓殑瓒呮椂鐩戝惉 - case VideoManagerConstants.EVENT_OUTLINE_UNREGISTER: - redis.del(key); - break; - default: - boolean exist = redis.hasKey(key); - if (exist) { + // 蹇冭烦瓒呮椂瑙﹀彂鐨勭绾夸簨浠讹紝璇存槑redis涓凡鍒犻櫎锛屾棤闇�澶勭悊 + case VideoManagerConstants.EVENT_OUTLINE_TIMEOUT: + break; + // 璁惧涓诲姩娉ㄩ攢瑙﹀彂鐨勭绾夸簨浠讹紝闇�瑕佸垹闄edis涓殑瓒呮椂鐩戝惉 + case VideoManagerConstants.EVENT_OUTLINE_UNREGISTER: redis.del(key); - } + break; + default: + boolean exist = redis.hasKey(key); + if (exist) { + redis.del(key); + } } // 澶勭悊绂荤嚎鐩戝惉 storager.outline(event.getDeviceId()); + + // TODO 绂荤嚎鍙栨秷璁㈤槄 + } } -- Gitblit v1.8.0