跳到主要内容
版本:7.0.2

消息端点

DeepSeek V3 中英对照 Messaging Endpoints

章节总结

📄️ Endpoint Roles

从版本 4.2 开始,端点可以被分配给角色。角色允许端点以组的形式启动和停止。这在领导选举中特别有用,当领导权被授予或撤销时,可以相应地启动或停止一组端点。为此,框架在应用程序上下文中注册了一个名为 IntegrationContextUtils.INTEGRATION\_LIFECYCLE\_ROLE\_CONTROLLER 的 SmartLifecycleRoleController bean。每当需要控制生命周期时,可以注入或使用 @Autowired 注解来获取这个 bean:

📄️ 服务激活器

服务激活器是一种端点类型,用于将任何Spring管理的对象连接到输入通道,使其能够扮演服务的角色。如果该服务产生输出,它也可以连接到输出通道。或者,产生输出的服务可以位于处理管道或消息流的末端,在这种情况下,可以使用入站消息的replyChannel头。如果未定义输出通道,这是默认行为。与这里描述的大多数配置选项一样,相同的行为实际上适用于大多数其他组件。

📄️ Delayer

延迟器是一个简单的端点,它允许消息流延迟一定的时间间隔。当消息被延迟时,原始发送方不会阻塞。相反,延迟的消息会被安排给一个 org.springframework.scheduling.TaskScheduler 实例,在延迟时间过后发送到输出通道。这种方法即使对于相当长的延迟也具有可扩展性,因为它不会导致大量发送方线程被阻塞。相反,在典型情况下,会使用线程池来实际执行消息的释放。本节包含几个配置延迟器的示例。

📄️ 日志通道适配器

 常与线路分接器结合使用,正如线路分接器章节所述。然而,它也可以作为任何流程的最终消费者。例如,考虑一个以 结束的流程,该组件会返回结果,但您希望丢弃该结果。为此,您可以将结果发送到 NullChannel。或者,您可以将其路由到 INFO 级别的 。这样,当以 INFO 级别记录日志时,您可以看到被丢弃的消息,但在例如 WARN 级别记录日志时则看不到。如果使用 NullChannel,您只能在 DEBUG 级别记录日志时看到被丢弃的消息。以下列表展示了 logging-channel-adapter 元素所有可能的属性: