所以我的解决方案需要的模型如下:
我需要轮询数据库并根据结果创建对数据库的请求以获取更多数据,获取响应并将其传递给一组端口,基于提升的属性,只有一个端口会起作用。
它看起来像这样:
但是,如果您将“Temp Out”分配给发送端口组,则消息将发送到组中的所有端口,而与每个端口上设置的过滤器无关。据我了解,这是预期的行为(阅读此处)。
所以我探索了其他选项,例如在 SDK 中使用基于内容的路由(CBR 示例)。你可以在这里查看。
我尝试了这个并完全删除了编排(它真的不需要)。但是,存在重大的路由/订阅错误,经过进一步研究,如果您有请求响应端口,您似乎无法做到这一点。这里有一些关于此的文章。我几乎有这个用户的相同问题。
最后,我是否使用编排对我来说并不重要。但是,我需要一种解决方案,在该解决方案中,我可以将消息传递到多个发送端口,并且我只能让一个实际使用消息并发送。这是必要的,这样我就可以轻松地编辑和添加端口,而无需在编排中修改任何其他内容或硬代码决策。