From cf98c153774230f3b451c61ab733d3cc03e51506 Mon Sep 17 00:00:00 2001 From: Stormeye Wu Date: Sun, 30 Jun 2019 02:33:36 +0800 Subject: [PATCH] =?UTF-8?q?[=E9=9B=AA=E8=8A=B1=E7=AE=97=E6=B3=95][?= =?UTF-8?q?=E4=BF=AE=E6=94=B9]:=E8=B0=83=E6=95=B4=E9=9B=AA=E8=8A=B1?= =?UTF-8?q?=E7=AE=97=E6=B3=95=E4=B8=BA18=E4=BD=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/com/iformall/common/IdWorker.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/mallinkService/src/main/java/com/iformall/common/IdWorker.java b/mallinkService/src/main/java/com/iformall/common/IdWorker.java index 2074260c6..f2c0fa34a 100644 --- a/mallinkService/src/main/java/com/iformall/common/IdWorker.java +++ b/mallinkService/src/main/java/com/iformall/common/IdWorker.java @@ -21,7 +21,7 @@ public class IdWorker { private final long twepoch = 1489111610226L; /** 机器id所占的位数 */ - private final long workerIdBits = 9L; + private final long workerIdBits = 5L; /** 数据标识id所占的位数 */ private final long dataCenterIdBits = 5L; @@ -77,7 +77,7 @@ public class IdWorker { e.printStackTrace(); } String[] ipArray = ipAddr.split("\\."); - Long workerId = Long.valueOf(ipArray[3]) & maxWorkerId; /// Long.valueOf(ipArray[2]) << 8 | + Long workerId = (Long.valueOf(ipArray[3]) % maxWorkerId) & maxWorkerId; /// Long.valueOf(ipArray[2]) << 8 | String pName = ManagementFactory.getRuntimeMXBean().getName(); Long dataCenterId = Long.valueOf(pName.split("@")[0]) & maxDataCenterId;