takagi906 opened a new pull request, #1056:
URL: https://github.com/apache/rocketmq-clients/pull/1056

   <!-- Please make sure the target branch is right. In most case, the target 
branch should be `master`. -->
   
   ### Which Issue(s) This PR Fixes
   
   <!-- Please ensure that the related issue has already been created, and 
[link this pull request to that issue using 
keywords](<https://docs.github.com/en/issues/tracking-your-work-with-issues/linking-a-pull-request-to-an-issue#linking-a-pull-request-to-an-issue-using-a-keyword>)
 to ensure automatic closure. -->
   
   Fixes #[1055](https://github.com/apache/rocketmq-clients/issues/1055)
   
   ### Brief Description
   The modifications are concentrated in golang/client_manager.go.
   1. Use an isolated map to collect proxy addresses that failed to access, and 
filter these addresses when calling getRpcClient.
   2. Add a scheduled task to remove the restored endpoints from the isolated 
map.
   3. Functions provided by ClientManager, such as sendmessage, provide a retry 
mechanism. If a failure occurs, a new endpoint will be selected for sending 
until no endpoints are available for selection.
   
   ### How Did You Test This Change?
   1. set endpoints 127.0.0.1:8080;127.0.0.1:8082
   2. start up two proxy
   3. shutdown one proxy, you can see that the request has been switched to 
another machine.
   4. shutdown two proxy and then restart one, you can see that the producer 
can resend messages.
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to