26.12. 并发使用


JMS 的常见要求是在多个线程中同时消耗消息,以便应用更快响应。您可以设置 concurrentConsumers 选项来指定为 JMS 端点提供服务的线程数量,如下所示:

from("jms:SomeQueue?concurrentConsumers=20").
  bean(MyClass.class);

您可以使用以下方法之一配置这个选项:

  • JmsComponent 上,
  • 在端点 URI 上,或者
  • 通过在 JmsEndpoint 上直接调用 setConcurrentConsumers ()

26.12.1. 使用 async consumer 的并发使用

请注意,当当前消息被完全处理时,每个并发使用者只会从 JMS 代理获取下一个可用消息。您可以设置 asyncConsumer=true 选项,以便消费者从 JMS 队列中选取下一个消息,而前面的消息被异步处理(通过异步路由引擎)。请参阅有关 asyncConsumer 选项的页面顶部的详情。

from("jms:SomeQueue?concurrentConsumers=20&asyncConsumer=true").
  bean(MyClass.class);
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.