From d622e7324262be0e841bf9a4f9bb8a2340867c3e Mon Sep 17 00:00:00 2001 From: tianwenbo Date: Fri, 10 Mar 2023 15:13:46 +0800 Subject: [PATCH] =?UTF-8?q?=E3=80=90fix=20sonar=E3=80=91=20ExecutorRouteCo?= =?UTF-8?q?nsistentHash.java=E6=96=87=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../strategy/ExecutorRouteConsistentHash.java | 18 ++++++------------ 1 file changed, 6 insertions(+), 12 deletions(-) diff --git a/jero-boot/jero-cloud-module/jero-cloud-xxljob/src/main/java/com/xxl/job/admin/core/route/strategy/ExecutorRouteConsistentHash.java b/jero-boot/jero-cloud-module/jero-cloud-xxljob/src/main/java/com/xxl/job/admin/core/route/strategy/ExecutorRouteConsistentHash.java index 41ac671c..df5c8d9b 100644 --- a/jero-boot/jero-cloud-module/jero-cloud-xxljob/src/main/java/com/xxl/job/admin/core/route/strategy/ExecutorRouteConsistentHash.java +++ b/jero-boot/jero-cloud-module/jero-cloud-xxljob/src/main/java/com/xxl/job/admin/core/route/strategy/ExecutorRouteConsistentHash.java @@ -4,7 +4,7 @@ import com.xxl.job.admin.core.route.ExecutorRouter; import com.xxl.job.core.biz.model.ReturnT; import com.xxl.job.core.biz.model.TriggerParam; -import java.io.UnsupportedEncodingException; +import java.nio.charset.StandardCharsets; import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; import java.util.List; @@ -19,7 +19,7 @@ import java.util.TreeMap; */ public class ExecutorRouteConsistentHash extends ExecutorRouter { - private static int VIRTUAL_NODE_NUM = 100; + private static final int VIRTUAL_NODE_NUM = 100; /** * get hash code on 2^32 ring (md5散列的方式计算hash值) @@ -37,12 +37,7 @@ public class ExecutorRouteConsistentHash extends ExecutorRouter { } md5.reset(); byte[] keyBytes = null; - try { - keyBytes = key.getBytes("UTF-8"); - } catch (UnsupportedEncodingException e) { - throw new RuntimeException("Unknown string :" + key, e); - } - + keyBytes = key.getBytes(StandardCharsets.UTF_8); md5.update(keyBytes); byte[] digest = md5.digest(); @@ -52,15 +47,14 @@ public class ExecutorRouteConsistentHash extends ExecutorRouter { | ((long) (digest[1] & 0xFF) << 8) | (digest[0] & 0xFF); - long truncateHashCode = hashCode & 0xffffffffL; - return truncateHashCode; + return hashCode & 0xffffffffL; } public String hashJob(int jobId, List addressList) { // ------A1------A2-------A3------ // -----------J1------------------ - TreeMap addressRing = new TreeMap(); + TreeMap addressRing = new TreeMap<>(); for (String address: addressList) { for (int i = 0; i < VIRTUAL_NODE_NUM; i++) { long addressHash = hash("SHARD-" + address + "-NODE-" + i); @@ -79,7 +73,7 @@ public class ExecutorRouteConsistentHash extends ExecutorRouter { @Override public ReturnT route(TriggerParam triggerParam, List addressList) { String address = hashJob(triggerParam.getJobId(), addressList); - return new ReturnT(address); + return new ReturnT<>(address); } }