gpt4 book ai didi

spring-integration - MessageGroupStoreReaper 到底是做什么用的

转载 作者:行者123 更新时间:2023-12-04 07:53:07 30 4
gpt4 key购买 nike

所有 spring 项目都有广泛且非常有用的文档,spring 集成项目也是如此,但我希望能够收集大量信息的一个主题是消息组收割者。基本上它似乎是一种可以从外部影响聚合器以发布一些消息的机制。不清楚的是它与发布政策有何不同或相似之处。它实际上是从聚合器中释放消息,以便它们随后由流中的后续组件处理,还是它只是清空聚合器,有点像丢弃聚合消息。其次是控制发布哪些消息,以便发布属于特定组的消息,但不发布其他消息。

最佳答案

在 Spring Integration 4.0 之前,聚合器是一个完全被动的组件。组释放(或不释放)由新消息的到达触发——当查询释放策略以查看是否可以释放该消息所属的组时。那么,我们如何丢弃(或释放)空闲且一段时间内没有新消息到达的组?

收割者按计划运行,可以检测“卡住”组并根据时间释放它们,而没有新消息到达。

它还用于删除空组 - 聚合器可以配置为使空组保持存在,以便可以丢弃迟到的消息而不是形成新组。可以按照不同的时间表收割空组以部分完成组。

收割者使所有满足配置条件的组过期;如果该组通过标准,则它已过期;否则它不是,并且将在下次收割者运行时考虑。收割者采取的行动(部分释放、丢弃等)取决于聚合器上的其他设置。

Spring Integration 4.0 引入了新的属性(group-timeoutgroup-timeout-expression),允许部分组在超时后自动释放,无需收割机(当一个组的新消息到达时,计时器就会启动)。在这种情况下,reaper 仍可用于使空组过期(删除)。

我希望这能解释收割者的功能。

关于spring-integration - MessageGroupStoreReaper 到底是做什么用的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23502376/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com