85.8. 示例


在以下路由中,我们使用 Disruptor 将请求发送到此 async 队列,以便能够在另一个线程中发送一个 fire-and-forget 消息,并将这些线程的持续回复返回到原始调用者。

public void configure() throws Exception {
    from("direct:start")
        // send it to the disruptor that is async
        .to("disruptor:next")
        // return a constant response
        .transform(constant("OK"));

    from("disruptor:next").to("mock:result");
}

此处我们发送 Hello World 消息,并期望回复正常。

Object out = template.requestBody("direct:start", "Hello World");
assertEquals("OK", out);

"Hello World"消息将从另一个线程的 Disruptor 中使用,以便进一步处理。由于这是单元测试,因此它将被发送到模拟端点,我们在单元测试中执行断言。

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.