-
Notifications
You must be signed in to change notification settings - Fork 899
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[ISSUE #553] Feat: Integrate RocketMQ 5.0 client with Spring #554
Conversation
@1294566108 Fantastic work! Meanwhile, could you fix the CI issue? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Could you provide more documentation or code examples to help us understand how to utilize the 5.x client?
Okay, I will prepare a User Guide and Readme documentation first |
/** | ||
* @author Akai | ||
*/ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Plz remove the author info.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It seems that this file is unnecessary.
pom.xml
Outdated
<module>rocketmq-client-spring-boot</module> | ||
<module>rocketmq-client-spring-boot-parent</module> | ||
<module>rocketmq-client-spring-boot-starter</module> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It seems that the name of the module cannot be well distinguished from the original remoting client. Maybe rename o rocketmq-grpc-client-spring-boot
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is there a possibility that we don't emphasize gRPC, since the artifact id of 5.x SDK doesn't contain the keyword "gRPC" either?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Does this UserGuide need to be presented to users like a wiki document? If so, it is necessary to consider writing a bilingual version of the document like this.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Does this UserGuide need to be presented to users like a wiki document? If so, it is necessary to consider writing a bilingual version of the document like this.
Yes, I think we also need a user guide.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is there a possibility that we don't emphasize gRPC, since the artifact id of 5.x SDK doesn't contain the keyword "gRPC" either?
Or rocketmq-v5-client-spring-boot?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@RongtongJin I agree with you.
May 27, 2023 The recent additions and modifications are as follows:
|
|
||
### 修改application.properties | ||
|
||
**rocketmq.producer.topic:**用于给生产者设置topic名称(可选,但建议使用),生产者可以在消息发布之前**预取**topic路由。<br />**demo.rocketmq.normal-topic:**用户自定义消息发送的topic |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
void testSendNormalMessage() { | ||
SendReceipt sendReceipt = rocketMQClientTemplate.syncSendNormalMessage(normalTopic, new UserMessage() | ||
.setId(1).setUserName("name").setUserAge((byte) 3)); | ||
System.out.printf("normalSend to topic %s sendReceipt=%s %n", normalTopic, sendReceipt); | ||
|
||
sendReceipt = rocketMQClientTemplate.syncSendNormalMessage(normalTopic, "normal message"); | ||
System.out.printf("normalSend to topic %s sendReceipt=%s %n", normalTopic, sendReceipt); | ||
|
||
sendReceipt = rocketMQClientTemplate.syncSendNormalMessage(normalTopic, "byte message".getBytes(StandardCharsets.UTF_8)); | ||
System.out.printf("normalSend to topic %s sendReceipt=%s %n", normalTopic, sendReceipt); | ||
|
||
sendReceipt = rocketMQClientTemplate.syncSendNormalMessage(normalTopic, MessageBuilder. | ||
withPayload("test message".getBytes()).build()); | ||
System.out.printf("normalSend to topic %s sendReceipt=%s %n", normalTopic, sendReceipt); | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This part of the example is unnecessary.
pom.xml
Outdated
<module>rocketmq-client-spring-boot</module> | ||
<module>rocketmq-client-spring-boot-parent</module> | ||
<module>rocketmq-client-spring-boot-starter</module> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is there a possibility that we don't emphasize gRPC, since the artifact id of 5.x SDK doesn't contain the keyword "gRPC" either?
Or rocketmq-v5-client-spring-boot?
June 2nd The modifications are as follows:
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@1294566108 Plz pass the license checker workflow
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@1294566108 Plz pass the license checker workflow
Test the example module and the results are as follows |
May I ask if the current testing coverage is sufficient and if there are any additional test cases that need to be added |
What is the purpose of the change
RocketMQ recently released the 5.0 client SDK. At present, we have integrated the 4.x version of SDK to Spring, so we also need to integrate the 5.0 SDK client to Spring to better and faster use the new version of the client's Spring integration.
Brief changelog