运行时访问主题信息

从 2.9 版本开始,您可以通过注入提供的 DestinationTopicContainer bean 来访问运行时主题链信息。此接口提供查找链中下一个主题或已配置主题的 DLT 的方法,以及主题名称、延迟和类型等有用属性。

作为一个实际用例示例,您可以使用此类信息,以便控制台应用程序可以在故障处理原因(例如错误/不一致状态)解决后,将记录从 DLT 重新发送到链中的第一个重试主题。

DestinationTopicContainer#getNextDestinationTopicFor() 方法提供的 DestinationTopic 对应于输入主题链中注册的下一个主题。由于各种因素(例如异常分类、尝试次数或单主题固定延迟策略),消息将被转发到的实际主题可能会有所不同。如果您需要考虑这些因素,请使用 DestinationTopicResolver 接口。