[ISSUE #339] Fix consumer do not consume message with the same instance name

Co-authored-by: zhangxu16 <zhangxu16@xiaomi.com>
diff --git a/rocketmq-spring-boot/src/main/java/org/apache/rocketmq/spring/support/RocketMQUtil.java b/rocketmq-spring-boot/src/main/java/org/apache/rocketmq/spring/support/RocketMQUtil.java
index a891fa7..381d936 100644
--- a/rocketmq-spring-boot/src/main/java/org/apache/rocketmq/spring/support/RocketMQUtil.java
+++ b/rocketmq-spring-boot/src/main/java/org/apache/rocketmq/spring/support/RocketMQUtil.java
@@ -287,7 +287,8 @@
         char separator = '@';
         StringBuilder instanceName = new StringBuilder();
         instanceName.append(identify)
-                .append(separator).append(UtilAll.getPid());
+                .append(separator).append(UtilAll.getPid())
+                .append(separator).append(System.nanoTime());
         return instanceName.toString();
     }
 
diff --git a/rocketmq-spring-boot/src/test/java/org/apache/rocketmq/spring/support/RocketMQUtilTest.java b/rocketmq-spring-boot/src/test/java/org/apache/rocketmq/spring/support/RocketMQUtilTest.java
index e558483..30b8026 100644
--- a/rocketmq-spring-boot/src/test/java/org/apache/rocketmq/spring/support/RocketMQUtilTest.java
+++ b/rocketmq-spring-boot/src/test/java/org/apache/rocketmq/spring/support/RocketMQUtilTest.java
@@ -135,6 +135,6 @@
     public void testGetInstanceName() {
         String nameServer = "127.0.0.1:9876";
         String expected = "127.0.0.1:9876@";
-        assertEquals(expected + UtilAll.getPid(), RocketMQUtil.getInstanceName(nameServer));
+        assertTrue(RocketMQUtil.getInstanceName(nameServer).startsWith(expected + UtilAll.getPid()));
     }
 }
\ No newline at end of file