49.4. 端点选项


Stub 端点使用 URI 语法进行配置:

stub:name
Copy to Clipboard Toggle word wrap

使用以下路径和查询参数:

49.4.1. 路径参数(1 参数)

Expand
名称描述默认类型

名称 (common)

所需 队列的名称.

 

字符串

49.4.2. 查询参数(18 参数)

Expand
名称描述默认类型

大小 (通用)

SEDA 队列的最大容量(例如,它可以保存的消息数)。默认情况下,将使用 SEDA 组件上设置的 defaultSize。

1000

int

bridgeErrorHandler (consumer)

允许将消费者桥接到 Camel 路由错误处理程序,这意味着当消费者试图选择传入消息或类似信息时发生异常,现在将作为消息处理并由路由 Error Handler 处理。默认情况下,使用者将使用 org.apache.camel.spi.ExceptionHandler 来处理例外情况,该处理程序将被记录在 WARN 或 ERROR 级别,并忽略。

false

布尔值

concurrentConsumers (consumer)

并发线程处理交换数量。

1

int

exceptionHandler (consumer (advanced))

要让使用者使用自定义例外处理程序:请注意,如果启用了 bridgeErrorHandler 选项,则此选项不使用。默认情况下,消费者将处理异常,其记录在 WARN 或 ERROR 级别中,并忽略。

 

ExceptionHandler

exchangePattern (consumer (advanced))

在消费者创建交换时设置交换模式。

Enum 值:

  • InOnly
  • InOut
  • InOptionalOut
 

ExchangePattern

limitConcurrentConsumers (使用者(高级)

是否要将 concurrentConsumers 的数量限制为最多 500。默认情况下,如果端点配置了数字,则会抛出异常。您可以通过关闭这个选项来禁用该检查。

true

布尔值

multipleConsumers (使用者(高级)

指定是否允许多个用户。如果启用,您可以将 SEDA 用于 Publish-Subscribe 消息传递。也就是说,您可以向 SEDA 队列发送消息,并让每个使用者收到消息的副本。启用后,应在每个消费者端点上指定这个选项。

false

布尔值

pollTimeout (使用者(高级)

轮询时使用的超时时间(以毫秒为单位)。发生超时时,使用者可以检查是否允许它继续运行。设置较低的值可让消费者在关闭时更快地响应。

1000

int

purgeWhenStopping (使用者(高级)

在停止消费者/路由时是否清除任务队列。这可以更快地停止,因为队列中的任何待处理消息都会被丢弃。

false

布尔值

blockWhenFull (producer)

如果线程是否向完整 SEDA 队列发送消息,将阻止到队列的容量不再耗尽为止。默认情况下,会抛出异常,表示该队列已满。通过启用此选项,调用线程将改为阻止并等待消息被接受。

false

布尔值

discardIfNoConsumers (producer)

当发送到没有活跃消费者的队列时,生产者是否应该丢弃消息(不要将消息添加到队列中)。如果同时只能启用NoConsumers,则只有一个选项 discardIfNoConsumers。

false

布尔值

discardWhenFull (producer)

是否丢弃将消息发送到完整 SEDA 队列的线程。默认情况下,会抛出异常,表示该队列已满。通过启用此选项,调用线程将放弃发送并继续,即消息没有发送到 SEDA 队列。

false

布尔值

failIfNoConsumers (producer)

当发送到没有活跃消费者的队列时,生产者是否应通过抛出异常失败。如果同时只能启用NoConsumers,则只有一个选项 discardIfNoConsumers。

false

布尔值

lazyStartProducer (producer)

生成者是否应懒惰启动 (在第一个消息中)。通过懒惰启动,您可以使用此选项来允许 CamelContext 和路由在生成者启动期间启动,并导致路由启动失败。通过懒惰启动,启动失败可以在路由信息时通过 Camel 的路由错误处理程序进行处理。请注意,在处理第一个消息时,创建并启动生成者可能需要稍等时间,并延长处理的总处理时间。

false

布尔值

offerTimeout (producer)

当队列满时,可以将超时时间(以毫秒为单位)添加到块问题单中。您可以使用 0 或负值禁用超时。

 

long

超时 (生成者)

SEDA 制作者之前超时(以毫秒为单位)将停止等待异步任务完成。您可以使用 0 或负值禁用超时。

30000

long

waitForTaskToComplete (producer)

选项指定调用者是否应该等待 async 任务完成的选项,然后再继续。支持以下三个选项: Always、Never 或 IfReplyExpected。前两个值是自我解释。最后的值 IfReplyExpected 只有在消息是 Request Reply based 时才会等待。默认选项为 IfReplyExpected。

Enum 值:

  • Never
  • IfReplyExpected
  • Always

IfReplyExpected

WaitForTaskToComplete

队列 (高级)

定义供端点使用的队列实例。

 

BlockingQueue

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2025 Red Hat