我正在尝试通过具有 10 个分区和 10 个吞吐量单元的事件中心发送 100 万条小消息。
为此,我正在使用 javax.jms.MessageProducer 。
我的问题是:虽然我确实在 Azure 事件中心 UI 上看到了错误,但为什么我从来没有捕获过 ServerBusy(或任何其他)异常?会不会是 java 库已经处理了异常,包括可能重新发送消息,而根本没有将其暴露在外面?
而且,一般来说,Java 生产者中 ServerBusy 错误处理的最佳实践是什么?(也许实现一个速率限制器,以便生产者每个 TU 发送的消息始终不超过 1000 条?或者在捕获 ServerBusy 异常时实现重新发送策略?...)