ApolloOpenApiClient 支持重试机制
**你的特性请求和某个问题有关吗?请描述**
当网络抖动、`Apollo-portal gc` 或 `cpu load` 较高时,调用 `ApolloOpenApiClient` 的 api 将出现如下常见异常:

SocketTimeoutException 本身出现的频率并不高,但往往能通过重试机制有效解决。
也就是说在这种异常场景下,`Apollo-client` 的重试是十分有意义的。
**清晰简洁地描述一下你希望的解决方案**
about pr:https://github.com/apolloconfig/apollo-java/pull/105
`Apollo client` 使用 `Apache httpclient` 和 `Apollo-portal` 交互,`Apache httpclient` 已经提供了**优雅的重试机制**。
`Apollo client` 在初始化 `ApolloOpenApiClient` 时可以支持这个特性(可以透出一些参数供初始化使用,让用户可以选择是否进行重试,或者让 `ApolloOpenApiClient` 变得默认支持重试机制?)
**清晰简洁地描述一下这个特性的备选方案**
暂无
**其它背景**
1.业务在调用任何第三方 api 时,都应该考虑失败重试的场景(保证最终一致)
2.除此之外,任何提供给其他应用接入的涉及 rpc 相关的能力,都应该提供一定的重试机制(一定程度提升可靠性)
@nobodyiam 😊
关闭于 2025-05-22 0 条评论