From e3a59b76eb5795c140b51212ca30341046a47790 Mon Sep 17 00:00:00 2001 From: zengqiao Date: Mon, 19 Apr 2021 20:31:40 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E6=95=B0=E6=8D=AE=E5=88=A0?= =?UTF-8?q?=E7=A9=BA=E4=B9=8B=E5=90=8E,=20=E7=BC=93=E5=AD=98=E4=B8=8D?= =?UTF-8?q?=E8=83=BD=E8=A2=AB=E6=9B=B4=E6=96=B0=E7=9A=84BUG?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../kafka/manager/dao/gateway/impl/AppDaoImpl.java | 7 ++++--- .../kafka/manager/dao/gateway/impl/AuthorityDaoImpl.java | 9 +++++---- .../xiaojukeji/kafka/manager/dao/impl/TopicDaoImpl.java | 9 +++++---- 3 files changed, 14 insertions(+), 11 deletions(-) diff --git a/kafka-manager-dao/src/main/java/com/xiaojukeji/kafka/manager/dao/gateway/impl/AppDaoImpl.java b/kafka-manager-dao/src/main/java/com/xiaojukeji/kafka/manager/dao/gateway/impl/AppDaoImpl.java index 62475b9b..c14367fc 100644 --- a/kafka-manager-dao/src/main/java/com/xiaojukeji/kafka/manager/dao/gateway/impl/AppDaoImpl.java +++ b/kafka-manager-dao/src/main/java/com/xiaojukeji/kafka/manager/dao/gateway/impl/AppDaoImpl.java @@ -78,13 +78,14 @@ public class AppDaoImpl implements AppDao { * 更新APP缓存 */ private synchronized void updateTopicCache(List doList, long timestamp) { + if (APP_CACHE_LATEST_UPDATE_TIME == Constant.START_TIMESTAMP) { + APP_MAP.clear(); + } + if (doList == null || doList.isEmpty() || APP_CACHE_LATEST_UPDATE_TIME >= timestamp) { // 本次无数据更新, 或者本次更新过时 时, 忽略本次更新 return; } - if (APP_CACHE_LATEST_UPDATE_TIME == Constant.START_TIMESTAMP) { - APP_MAP.clear(); - } for (AppDO elem: doList) { APP_MAP.put(elem.getAppId(), elem); diff --git a/kafka-manager-dao/src/main/java/com/xiaojukeji/kafka/manager/dao/gateway/impl/AuthorityDaoImpl.java b/kafka-manager-dao/src/main/java/com/xiaojukeji/kafka/manager/dao/gateway/impl/AuthorityDaoImpl.java index 1b5df873..c7bac9e0 100644 --- a/kafka-manager-dao/src/main/java/com/xiaojukeji/kafka/manager/dao/gateway/impl/AuthorityDaoImpl.java +++ b/kafka-manager-dao/src/main/java/com/xiaojukeji/kafka/manager/dao/gateway/impl/AuthorityDaoImpl.java @@ -93,7 +93,7 @@ public class AuthorityDaoImpl implements AuthorityDao { private void updateAuthorityCache() { - Long timestamp = System.currentTimeMillis(); + long timestamp = System.currentTimeMillis(); if (timestamp + 1000 <= AUTHORITY_CACHE_LATEST_UPDATE_TIME) { // 近一秒内的请求不走db @@ -109,13 +109,14 @@ public class AuthorityDaoImpl implements AuthorityDao { * 更新Topic缓存 */ private synchronized void updateAuthorityCache(List doList, Long timestamp) { + if (AUTHORITY_CACHE_LATEST_UPDATE_TIME == Constant.START_TIMESTAMP) { + AUTHORITY_MAP.clear(); + } + if (doList == null || doList.isEmpty() || AUTHORITY_CACHE_LATEST_UPDATE_TIME >= timestamp) { // 本次无数据更新, 或者本次更新过时 时, 忽略本次更新 return; } - if (AUTHORITY_CACHE_LATEST_UPDATE_TIME == Constant.START_TIMESTAMP) { - AUTHORITY_MAP.clear(); - } for (AuthorityDO elem: doList) { Map> doMap = diff --git a/kafka-manager-dao/src/main/java/com/xiaojukeji/kafka/manager/dao/impl/TopicDaoImpl.java b/kafka-manager-dao/src/main/java/com/xiaojukeji/kafka/manager/dao/impl/TopicDaoImpl.java index 3c1ba335..58a989c6 100644 --- a/kafka-manager-dao/src/main/java/com/xiaojukeji/kafka/manager/dao/impl/TopicDaoImpl.java +++ b/kafka-manager-dao/src/main/java/com/xiaojukeji/kafka/manager/dao/impl/TopicDaoImpl.java @@ -92,7 +92,7 @@ public class TopicDaoImpl implements TopicDao { } private void updateTopicCache() { - Long timestamp = System.currentTimeMillis(); + long timestamp = System.currentTimeMillis(); if (timestamp + 1000 <= TOPIC_CACHE_LATEST_UPDATE_TIME) { // 近一秒内的请求不走db @@ -108,13 +108,14 @@ public class TopicDaoImpl implements TopicDao { * 更新Topic缓存 */ private synchronized void updateTopicCache(List doList, Long timestamp) { + if (TOPIC_CACHE_LATEST_UPDATE_TIME == Constant.START_TIMESTAMP) { + TOPIC_MAP.clear(); + } + if (doList == null || doList.isEmpty() || TOPIC_CACHE_LATEST_UPDATE_TIME >= timestamp) { // 本次无数据更新, 或者本次更新过时 时, 忽略本次更新 return; } - if (TOPIC_CACHE_LATEST_UPDATE_TIME == Constant.START_TIMESTAMP) { - TOPIC_MAP.clear(); - } for (TopicDO elem: doList) { Map doMap = TOPIC_MAP.getOrDefault(elem.getClusterId(), new ConcurrentHashMap<>()); -- GitLab