From eeb86aaf2f73a02600195ce2637dde6caf858a88 Mon Sep 17 00:00:00 2001 From: T100738 <1821349743@qq.com> Date: 星期二, 16 四月 2024 22:30:34 +0800 Subject: [PATCH] commit --- product-server-data-center/src/main/java/com/product/data/center/service/DataArchivingQueue.java | 21 ++++++++++++++++++++- 1 files changed, 20 insertions(+), 1 deletions(-) diff --git a/product-server-data-center/src/main/java/com/product/data/center/service/DataArchivingQueue.java b/product-server-data-center/src/main/java/com/product/data/center/service/DataArchivingQueue.java index 42972e2..235fa07 100644 --- a/product-server-data-center/src/main/java/com/product/data/center/service/DataArchivingQueue.java +++ b/product-server-data-center/src/main/java/com/product/data/center/service/DataArchivingQueue.java @@ -1,5 +1,6 @@ package com.product.data.center.service; +import cn.hutool.core.thread.ThreadUtil; import cn.hutool.core.util.RandomUtil; import com.google.common.collect.Maps; import com.google.common.collect.Sets; @@ -103,6 +104,8 @@ int totalPage = ceilPage(partSize, QUERY_PAGE_SIZE); StringBuilder tempFilter = new StringBuilder(128); for (int j = 0; j < totalPage; j++) { + //鏌ヨ鏃舵鏌ラ槦鍒楁暟閲忥紝濡傛灉瓒呰繃鏈�澶у�煎垯绛夊緟 + checkQueueCount(sourceTable); while (!allowQuery(sourceTable)) { Thread.sleep(RandomUtil.randomInt(800, 1200)); } @@ -199,7 +202,7 @@ ExecutorService executorService = queryThreadMap.get(tableName); if (executorService != null) { if (!executorService.isShutdown()) { - executorService.shutdown(); + executorService.shutdownNow(); } queryThreadMap.remove(tableName); } @@ -301,6 +304,22 @@ } /** + * 妫�鏌ラ槦鍒楁暟閲� + */ + private void checkQueueCount(String tableName) { + //鍒濆鏃堕棿 + long startTime = System.currentTimeMillis(); + while (queryMap.get(tableName) != null && queryMap.get(tableName).size() >= 10) { + //涓庡垵濮嬫椂闂存瘮杈冿紝濡傛灉瓒呰繃10鍒嗛挓鍒欐墦鍗� + if (System.currentTimeMillis() - startTime > 600000) { + WriteUtil.append("DA-闃熷垪鏁伴噺瓒呰繃10锛屽綋鍓嶆暟閲忥細" + queryMap.get(tableName).size()); + startTime = System.currentTimeMillis(); + } + ThreadUtil.sleep(10000); + } + } + + /** * 鏀惧叆闃熷垪 * * @param tableName -- Gitblit v1.9.2