You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@rocketmq.apache.org by ji...@apache.org on 2022/07/24 01:38:58 UTC
[rocketmq-spring] branch master updated: [ISSUE ##471] Supports instance name config in producer and consumer (#472)
This is an automated email from the ASF dual-hosted git repository.
jinrongtong pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/rocketmq-spring.git
The following commit(s) were added to refs/heads/master by this push:
new 2109762 [ISSUE ##471] Supports instance name config in producer and consumer (#472)
2109762 is described below
commit 21097621e092a618709f8220ee2ccd0acbaa3af0
Author: panzhi <pa...@qq.com>
AuthorDate: Sun Jul 24 09:38:54 2022 +0800
[ISSUE ##471] Supports instance name config in producer and consumer (#472)
* [ISSUE #471]support config instanceName
* [ISSUE #471]support config instanceName
---
rocketmq-spring-boot-samples/pom.xml | 4 ++--
.../rocketmq-consume-acl-demo/pom.xml | 2 +-
.../rocketmq-consume-demo/pom.xml | 2 +-
.../rocketmq-produce-acl-demo/pom.xml | 2 +-
.../rocketmq-produce-demo/pom.xml | 2 +-
.../samples/springboot/ExtRocketMQTemplate.java | 2 +-
.../ExtRocketMQConsumerConfiguration.java | 5 +++++
.../ExtRocketMQTemplateConfiguration.java | 5 +++++
.../spring/annotation/RocketMQMessageListener.java | 5 +++++
.../ExtConsumerResetConfiguration.java | 3 +--
.../ExtProducerResetConfiguration.java | 3 +--
.../autoconfigure/RocketMQAutoConfiguration.java | 2 ++
.../spring/autoconfigure/RocketMQProperties.java | 26 ++++++++++++++++++++++
.../support/DefaultRocketMQListenerContainer.java | 15 +++++++++++--
.../rocketmq/spring/support/RocketMQUtil.java | 18 ---------------
.../DefaultRocketMQListenerContainerTest.java | 4 +++-
.../rocketmq/spring/support/RocketMQUtilTest.java | 11 ---------
17 files changed, 68 insertions(+), 43 deletions(-)
diff --git a/rocketmq-spring-boot-samples/pom.xml b/rocketmq-spring-boot-samples/pom.xml
index 008f8e8..793eb5d 100644
--- a/rocketmq-spring-boot-samples/pom.xml
+++ b/rocketmq-spring-boot-samples/pom.xml
@@ -24,7 +24,7 @@
<groupId>org.apache.rocketmq</groupId>
<artifactId>rocketmq-spring-boot-samples</artifactId>
<packaging>pom</packaging>
- <version>2.2.2-SNAPSHOT</version>
+ <version>2.2.3-SNAPSHOT</version>
<name>RocketMQ Spring Boot Samples</name>
<description>Samples for RocketMQ Spring Boot</description>
@@ -40,7 +40,7 @@
<properties>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
- <rocketmq-spring-boot-starter-version>2.2.2-SNAPSHOT</rocketmq-spring-boot-starter-version>
+ <rocketmq-spring-boot-starter-version>2.2.3-SNAPSHOT</rocketmq-spring-boot-starter-version>
</properties>
<dependencies>
diff --git a/rocketmq-spring-boot-samples/rocketmq-consume-acl-demo/pom.xml b/rocketmq-spring-boot-samples/rocketmq-consume-acl-demo/pom.xml
index c3b05ab..e0b650e 100644
--- a/rocketmq-spring-boot-samples/rocketmq-consume-acl-demo/pom.xml
+++ b/rocketmq-spring-boot-samples/rocketmq-consume-acl-demo/pom.xml
@@ -23,7 +23,7 @@
<parent>
<groupId>org.apache.rocketmq</groupId>
<artifactId>rocketmq-spring-boot-samples</artifactId>
- <version>2.2.2-SNAPSHOT</version>
+ <version>2.2.3-SNAPSHOT</version>
</parent>
<artifactId>rocketmq-consume-acl-demo</artifactId>
diff --git a/rocketmq-spring-boot-samples/rocketmq-consume-demo/pom.xml b/rocketmq-spring-boot-samples/rocketmq-consume-demo/pom.xml
index 99fe1d6..0a49b56 100644
--- a/rocketmq-spring-boot-samples/rocketmq-consume-demo/pom.xml
+++ b/rocketmq-spring-boot-samples/rocketmq-consume-demo/pom.xml
@@ -23,7 +23,7 @@
<parent>
<groupId>org.apache.rocketmq</groupId>
<artifactId>rocketmq-spring-boot-samples</artifactId>
- <version>2.2.2-SNAPSHOT</version>
+ <version>2.2.3-SNAPSHOT</version>
</parent>
<artifactId>rocketmq-consume-demo</artifactId>
diff --git a/rocketmq-spring-boot-samples/rocketmq-produce-acl-demo/pom.xml b/rocketmq-spring-boot-samples/rocketmq-produce-acl-demo/pom.xml
index e673d03..477e32e 100644
--- a/rocketmq-spring-boot-samples/rocketmq-produce-acl-demo/pom.xml
+++ b/rocketmq-spring-boot-samples/rocketmq-produce-acl-demo/pom.xml
@@ -23,7 +23,7 @@
<parent>
<groupId>org.apache.rocketmq</groupId>
<artifactId>rocketmq-spring-boot-samples</artifactId>
- <version>2.2.2-SNAPSHOT</version>
+ <version>2.2.3-SNAPSHOT</version>
</parent>
<artifactId>rocketmq-produce-acl-demo</artifactId>
diff --git a/rocketmq-spring-boot-samples/rocketmq-produce-demo/pom.xml b/rocketmq-spring-boot-samples/rocketmq-produce-demo/pom.xml
index 9473bcd..435fb1d 100644
--- a/rocketmq-spring-boot-samples/rocketmq-produce-demo/pom.xml
+++ b/rocketmq-spring-boot-samples/rocketmq-produce-demo/pom.xml
@@ -23,7 +23,7 @@
<parent>
<groupId>org.apache.rocketmq</groupId>
<artifactId>rocketmq-spring-boot-samples</artifactId>
- <version>2.2.2-SNAPSHOT</version>
+ <version>2.2.3-SNAPSHOT</version>
</parent>
<artifactId>rocketmq-produce-demo</artifactId>
diff --git a/rocketmq-spring-boot-samples/rocketmq-produce-demo/src/main/java/org/apache/rocketmq/samples/springboot/ExtRocketMQTemplate.java b/rocketmq-spring-boot-samples/rocketmq-produce-demo/src/main/java/org/apache/rocketmq/samples/springboot/ExtRocketMQTemplate.java
index e509187..5cbd5c5 100644
--- a/rocketmq-spring-boot-samples/rocketmq-produce-demo/src/main/java/org/apache/rocketmq/samples/springboot/ExtRocketMQTemplate.java
+++ b/rocketmq-spring-boot-samples/rocketmq-produce-demo/src/main/java/org/apache/rocketmq/samples/springboot/ExtRocketMQTemplate.java
@@ -19,6 +19,6 @@ package org.apache.rocketmq.samples.springboot;
import org.apache.rocketmq.spring.annotation.ExtRocketMQTemplateConfiguration;
import org.apache.rocketmq.spring.core.RocketMQTemplate;
-@ExtRocketMQTemplateConfiguration(nameServer = "${demo.rocketmq.extNameServer}", tlsEnable = "${demo.rocketmq.ext.useTLS}")
+@ExtRocketMQTemplateConfiguration(nameServer = "${demo.rocketmq.extNameServer}", tlsEnable = "${demo.rocketmq.ext.useTLS}", instanceName = "pztest33")
public class ExtRocketMQTemplate extends RocketMQTemplate {
}
\ No newline at end of file
diff --git a/rocketmq-spring-boot/src/main/java/org/apache/rocketmq/spring/annotation/ExtRocketMQConsumerConfiguration.java b/rocketmq-spring-boot/src/main/java/org/apache/rocketmq/spring/annotation/ExtRocketMQConsumerConfiguration.java
index 42172a4..d905fa6 100644
--- a/rocketmq-spring-boot/src/main/java/org/apache/rocketmq/spring/annotation/ExtRocketMQConsumerConfiguration.java
+++ b/rocketmq-spring-boot/src/main/java/org/apache/rocketmq/spring/annotation/ExtRocketMQConsumerConfiguration.java
@@ -115,4 +115,9 @@ public @interface ExtRocketMQConsumerConfiguration {
* The namespace of consumer.
*/
String namespace() default "";
+
+ /**
+ * The property of "instanceName".
+ */
+ String instanceName() default "DEFAULT";
}
\ No newline at end of file
diff --git a/rocketmq-spring-boot/src/main/java/org/apache/rocketmq/spring/annotation/ExtRocketMQTemplateConfiguration.java b/rocketmq-spring-boot/src/main/java/org/apache/rocketmq/spring/annotation/ExtRocketMQTemplateConfiguration.java
index 090100c..504d5c0 100644
--- a/rocketmq-spring-boot/src/main/java/org/apache/rocketmq/spring/annotation/ExtRocketMQTemplateConfiguration.java
+++ b/rocketmq-spring-boot/src/main/java/org/apache/rocketmq/spring/annotation/ExtRocketMQTemplateConfiguration.java
@@ -93,4 +93,9 @@ public @interface ExtRocketMQTemplateConfiguration {
* The namespace of producer.
*/
String namespace() default "";
+
+ /**
+ * The property of "instanceName".
+ */
+ String instanceName() default "DEFAULT";
}
diff --git a/rocketmq-spring-boot/src/main/java/org/apache/rocketmq/spring/annotation/RocketMQMessageListener.java b/rocketmq-spring-boot/src/main/java/org/apache/rocketmq/spring/annotation/RocketMQMessageListener.java
index 71ff7e2..bea1e9e 100644
--- a/rocketmq-spring-boot/src/main/java/org/apache/rocketmq/spring/annotation/RocketMQMessageListener.java
+++ b/rocketmq-spring-boot/src/main/java/org/apache/rocketmq/spring/annotation/RocketMQMessageListener.java
@@ -165,4 +165,9 @@ public @interface RocketMQMessageListener {
* The minimum value is 0
*/
int awaitTerminationMillisWhenShutdown() default 1000;
+
+ /**
+ * The property of "instanceName".
+ */
+ String instanceName() default "DEFAULT";
}
diff --git a/rocketmq-spring-boot/src/main/java/org/apache/rocketmq/spring/autoconfigure/ExtConsumerResetConfiguration.java b/rocketmq-spring-boot/src/main/java/org/apache/rocketmq/spring/autoconfigure/ExtConsumerResetConfiguration.java
index fcb253d..b954ff9 100644
--- a/rocketmq-spring-boot/src/main/java/org/apache/rocketmq/spring/autoconfigure/ExtConsumerResetConfiguration.java
+++ b/rocketmq-spring-boot/src/main/java/org/apache/rocketmq/spring/autoconfigure/ExtConsumerResetConfiguration.java
@@ -93,8 +93,6 @@ public class ExtConsumerResetConfiguration implements ApplicationContextAware, S
DefaultLitePullConsumer consumer = null;
try {
consumer = createConsumer(annotation);
- // Set instanceName same as the beanName
- consumer.setInstanceName(beanName);
consumer.start();
} catch (Exception e) {
log.error("Failed to startup PullConsumer for RocketMQTemplate {}", beanName, e);
@@ -133,6 +131,7 @@ public class ExtConsumerResetConfiguration implements ApplicationContextAware, S
litePullConsumer.setEnableMsgTrace(annotation.enableMsgTrace());
litePullConsumer.setCustomizedTraceTopic(resolvePlaceholders(annotation.customizedTraceTopic(), consumerConfig.getCustomizedTraceTopic()));
litePullConsumer.setNamespace(annotation.namespace());
+ litePullConsumer.setInstanceName(annotation.instanceName());
return litePullConsumer;
}
diff --git a/rocketmq-spring-boot/src/main/java/org/apache/rocketmq/spring/autoconfigure/ExtProducerResetConfiguration.java b/rocketmq-spring-boot/src/main/java/org/apache/rocketmq/spring/autoconfigure/ExtProducerResetConfiguration.java
index ed9fb7d..9468f2e 100644
--- a/rocketmq-spring-boot/src/main/java/org/apache/rocketmq/spring/autoconfigure/ExtProducerResetConfiguration.java
+++ b/rocketmq-spring-boot/src/main/java/org/apache/rocketmq/spring/autoconfigure/ExtProducerResetConfiguration.java
@@ -85,8 +85,6 @@ public class ExtProducerResetConfiguration implements ApplicationContextAware, S
validate(annotation, genericApplicationContext);
DefaultMQProducer mqProducer = createProducer(annotation);
- // Set instanceName same as the beanName
- mqProducer.setInstanceName(beanName);
try {
mqProducer.start();
} catch (MQClientException e) {
@@ -130,6 +128,7 @@ public class ExtProducerResetConfiguration implements ApplicationContextAware, S
producer.setRetryAnotherBrokerWhenNotStoreOK(annotation.retryNextServer());
producer.setUseTLS(useTLS);
producer.setNamespace(annotation.namespace());
+ producer.setInstanceName(annotation.instanceName());
return producer;
}
diff --git a/rocketmq-spring-boot/src/main/java/org/apache/rocketmq/spring/autoconfigure/RocketMQAutoConfiguration.java b/rocketmq-spring-boot/src/main/java/org/apache/rocketmq/spring/autoconfigure/RocketMQAutoConfiguration.java
index a765de9..b84bb04 100644
--- a/rocketmq-spring-boot/src/main/java/org/apache/rocketmq/spring/autoconfigure/RocketMQAutoConfiguration.java
+++ b/rocketmq-spring-boot/src/main/java/org/apache/rocketmq/spring/autoconfigure/RocketMQAutoConfiguration.java
@@ -117,6 +117,7 @@ public class RocketMQAutoConfiguration implements ApplicationContextAware {
producer.setRetryAnotherBrokerWhenNotStoreOK(producerConfig.isRetryNextServer());
producer.setUseTLS(producerConfig.isTlsEnable());
producer.setNamespace(producerConfig.getNamespace());
+ producer.setInstanceName(producerConfig.getInstanceName());
log.info(String.format("a producer (%s) init on namesrv %s", groupName,nameServer));
return producer;
}
@@ -148,6 +149,7 @@ public class RocketMQAutoConfiguration implements ApplicationContextAware {
litePullConsumer.setEnableMsgTrace(consumerConfig.isEnableMsgTrace());
litePullConsumer.setCustomizedTraceTopic(consumerConfig.getCustomizedTraceTopic());
litePullConsumer.setNamespace(consumerConfig.getNamespace());
+ litePullConsumer.setInstanceName(consumerConfig.getInstanceName());
log.info(String.format("a pull consumer(%s sub %s) init on namesrv %s", groupName, topicName,nameServer));
return litePullConsumer;
}
diff --git a/rocketmq-spring-boot/src/main/java/org/apache/rocketmq/spring/autoconfigure/RocketMQProperties.java b/rocketmq-spring-boot/src/main/java/org/apache/rocketmq/spring/autoconfigure/RocketMQProperties.java
index b9b98f2..d0f82cf 100644
--- a/rocketmq-spring-boot/src/main/java/org/apache/rocketmq/spring/autoconfigure/RocketMQProperties.java
+++ b/rocketmq-spring-boot/src/main/java/org/apache/rocketmq/spring/autoconfigure/RocketMQProperties.java
@@ -165,6 +165,11 @@ public class RocketMQProperties {
*/
private boolean tlsEnable = false;
+ /**
+ * The property of "instanceName".
+ */
+ private String instanceName = "DEFAULT";
+
public String getGroup() {
return group;
}
@@ -268,6 +273,14 @@ public class RocketMQProperties {
public void setNamespace(String namespace) {
this.namespace = namespace;
}
+
+ public String getInstanceName() {
+ return instanceName;
+ }
+
+ public void setInstanceName(String instanceName) {
+ this.instanceName = instanceName;
+ }
}
public static class PullConsumer {
@@ -331,6 +344,11 @@ public class RocketMQProperties {
*/
private boolean tlsEnable = false;
+ /**
+ * The property of "instanceName".
+ */
+ private String instanceName = "DEFAULT";
+
public String getGroup() {
return group;
}
@@ -426,6 +444,14 @@ public class RocketMQProperties {
public void setNamespace(String namespace) {
this.namespace = namespace;
}
+
+ public String getInstanceName() {
+ return instanceName;
+ }
+
+ public void setInstanceName(String instanceName) {
+ this.instanceName = instanceName;
+ }
}
public static class PushConsumer extends PullConsumer {
diff --git a/rocketmq-spring-boot/src/main/java/org/apache/rocketmq/spring/support/DefaultRocketMQListenerContainer.java b/rocketmq-spring-boot/src/main/java/org/apache/rocketmq/spring/support/DefaultRocketMQListenerContainer.java
index 94d2671..30e7135 100644
--- a/rocketmq-spring-boot/src/main/java/org/apache/rocketmq/spring/support/DefaultRocketMQListenerContainer.java
+++ b/rocketmq-spring-boot/src/main/java/org/apache/rocketmq/spring/support/DefaultRocketMQListenerContainer.java
@@ -137,6 +137,8 @@ public class DefaultRocketMQListenerContainer implements InitializingBean,
private String namespace;
private long awaitTerminationMillisWhenShutdown;
+ private String instanceName;
+
public long getSuspendCurrentQueueTimeMillis() {
return suspendCurrentQueueTimeMillis;
}
@@ -247,6 +249,7 @@ public class DefaultRocketMQListenerContainer implements InitializingBean,
this.delayLevelWhenNextConsume = anno.delayLevelWhenNextConsume();
this.suspendCurrentQueueTimeMillis = anno.suspendCurrentQueueTimeMillis();
this.awaitTerminationMillisWhenShutdown = Math.max(0, anno.awaitTerminationMillisWhenShutdown());
+ this.instanceName = anno.instanceName();
}
public ConsumeMode getConsumeMode() {
@@ -297,6 +300,14 @@ public class DefaultRocketMQListenerContainer implements InitializingBean,
return awaitTerminationMillisWhenShutdown;
}
+ public String getInstanceName() {
+ return instanceName;
+ }
+
+ public void setInstanceName(String instanceName) {
+ this.instanceName = instanceName;
+ }
+
public DefaultRocketMQListenerContainer setAwaitTerminationMillisWhenShutdown(long awaitTerminationMillisWhenShutdown) {
this.awaitTerminationMillisWhenShutdown = awaitTerminationMillisWhenShutdown;
return this;
@@ -390,6 +401,7 @@ public class DefaultRocketMQListenerContainer implements InitializingBean,
", selectorExpression='" + selectorExpression + '\'' +
", messageModel=" + messageModel + '\'' +
", tlsEnable=" + tlsEnable +
+ ", instanceName=" + instanceName +
'}';
}
@@ -635,14 +647,13 @@ public class DefaultRocketMQListenerContainer implements InitializingBean,
consumer.setConsumeTimeout(consumeTimeout);
consumer.setMaxReconsumeTimes(maxReconsumeTimes);
consumer.setAwaitTerminationMillisWhenShutdown(awaitTerminationMillisWhenShutdown);
+ consumer.setInstanceName(instanceName);
switch (messageModel) {
case BROADCASTING:
consumer.setMessageModel(org.apache.rocketmq.common.protocol.heartbeat.MessageModel.BROADCASTING);
- consumer.setInstanceName(Long.toString(nameServer.hashCode()));
break;
case CLUSTERING:
consumer.setMessageModel(org.apache.rocketmq.common.protocol.heartbeat.MessageModel.CLUSTERING);
- consumer.setInstanceName(RocketMQUtil.getInstanceName(nameServer));
break;
default:
throw new IllegalArgumentException("Property 'messageModel' was wrong.");
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 aad63b4..8a39a73 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
@@ -30,7 +30,6 @@ import org.apache.rocketmq.client.producer.TransactionMQProducer;
import org.apache.rocketmq.client.trace.AsyncTraceDispatcher;
import org.apache.rocketmq.client.trace.TraceDispatcher;
import org.apache.rocketmq.client.trace.hook.SendMessageTraceHookImpl;
-import org.apache.rocketmq.common.UtilAll;
import org.apache.rocketmq.common.message.Message;
import org.apache.rocketmq.common.message.MessageConst;
import org.apache.rocketmq.common.message.MessageExt;
@@ -285,21 +284,6 @@ public class RocketMQUtil {
return producer;
}
- public static String getInstanceName(String identify) {
- char separator = '@';
- int maxLength = 100;
- StringBuilder instanceName = new StringBuilder();
- if (identify.length() > maxLength) {
- instanceName.append(identify, 0, maxLength)
- .append(identify.hashCode());
- } else {
- instanceName.append(identify.hashCode());
- }
- instanceName.append(separator).append(UtilAll.getPid())
- .append(separator).append(System.nanoTime());
- return instanceName.toString();
- }
-
public static DefaultLitePullConsumer createDefaultLitePullConsumer(String nameServer, String accessChannel,
String groupName, String topicName, MessageModel messageModel, SelectorType selectorType,
String selectorExpression, String ak, String sk, int pullBatchSize, boolean useTLS)
@@ -321,11 +305,9 @@ public class RocketMQUtil {
switch (messageModel) {
case BROADCASTING:
litePullConsumer.setMessageModel(org.apache.rocketmq.common.protocol.heartbeat.MessageModel.BROADCASTING);
- litePullConsumer.setInstanceName(Long.toString(nameServer.hashCode()));
break;
case CLUSTERING:
litePullConsumer.setMessageModel(org.apache.rocketmq.common.protocol.heartbeat.MessageModel.CLUSTERING);
- litePullConsumer.setInstanceName(RocketMQUtil.getInstanceName(nameServer));
break;
default:
throw new IllegalArgumentException("Property 'messageModel' was wrong.");
diff --git a/rocketmq-spring-boot/src/test/java/org/apache/rocketmq/spring/support/DefaultRocketMQListenerContainerTest.java b/rocketmq-spring-boot/src/test/java/org/apache/rocketmq/spring/support/DefaultRocketMQListenerContainerTest.java
index 3754db8..f7cd9cf 100644
--- a/rocketmq-spring-boot/src/test/java/org/apache/rocketmq/spring/support/DefaultRocketMQListenerContainerTest.java
+++ b/rocketmq-spring-boot/src/test/java/org/apache/rocketmq/spring/support/DefaultRocketMQListenerContainerTest.java
@@ -253,6 +253,7 @@ public class DefaultRocketMQListenerContainerTest {
assertEquals(anno.namespace(), container.getNamespace());
assertEquals(anno.delayLevelWhenNextConsume(), container.getDelayLevelWhenNextConsume());
assertEquals(anno.suspendCurrentQueueTimeMillis(), container.getSuspendCurrentQueueTimeMillis());
+ assertEquals(anno.instanceName(), container.getInstanceName());
}
@RocketMQMessageListener(consumerGroup = "abc1", topic = "test",
@@ -264,7 +265,8 @@ public class DefaultRocketMQListenerContainerTest {
tlsEnable = "tlsEnable",
namespace = "namespace",
delayLevelWhenNextConsume = 1234,
- suspendCurrentQueueTimeMillis = 2345
+ suspendCurrentQueueTimeMillis = 2345,
+ instanceName = "instanceName"
)
class TestRocketMQMessageListener {
}
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 d112c0e..56b1266 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
@@ -145,17 +145,6 @@ public class RocketMQUtilTest {
assertEquals("key1", message.getHeaders().get(toRocketHeaderKey(RocketMQHeaders.KEYS)));
}
- @Test
- public void testGetInstanceName() {
- String nameServer = "127.0.0.1:9876";
- String expected = "127.0.0.1:9876";
- assertEquals(expected.hashCode() + "@" + UtilAll.getPid(), removeNanoTime(RocketMQUtil.getInstanceName(nameServer)));
-
- nameServer = "I-am-a-very-very-long-domain-name-1:9876;I-am-a-very-very-long-domain-name-2:9876;I-am-a-very-very-long-domain-name-3:9876";
- expected = "I-am-a-very-very-long-domain-name-1:9876;I-am-a-very-very-long-domain-name-2:9876;I-am-a-very-very-l-335144505@";
- assertEquals(expected + UtilAll.getPid(), removeNanoTime(RocketMQUtil.getInstanceName(nameServer)));
- }
-
private String removeNanoTime(String instanceName) {
int index = instanceName.lastIndexOf('@');
if (index < 0) {