第 12 章 系统管理


摘要

系统管理模式描述了如何监控、测试和管理消息传递系统。

12.1. detour

detour

第 3 章 企业级集成模式简介 中的 Detour 允许您在满足控制条件时通过额外的步骤发送消息。在需要时,启用额外验证、测试、调试代码会很有用。

detour

Example

在本例中,我们基本上有一个类似于 from ("direct:start").to ("mock:result") 的路由,有条件 detour 到路由中间 mock:detour 端点。

from("direct:start").choice()
    .when().method("controlBean", "isDetour").to("mock:detour").end()
    .to("mock:result");

使用 Spring XML 扩展

<route>
  <from uri="direct:start"/>
    <choice>
      <when>
        <method bean="controlBean" method="isDetour"/>
	<to uri="mock:detour"/>
      </when>
    </choice>
    <to uri="mock:result"/>
  </split>
</route>

ControlBean 决定该 detour 是否处于打开状态。因此,当消息进入时,信息被路由到 mock:detour,然后 mock:result。当 detour 变为 off 时,消息会被路由到 mock:result

有关完整详情,请查看示例源:

camel-core/src/test/java/org/apache/camel/processor/DetourTest.java

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.