第 157 章 Ignite Compute 组件
从 Camel 版本 2.17 开始提供
Ignite Compute 端点是 camel-ignite 端点之一,它允许您通过传递 IgniteCallable、IgniteRunnable、IgniteRunnable 或它们的集合来在集群中运行 计算操作。
此端点仅支持生成者。
端点 URI 的主机部分是一个符号链接端点 ID,它不用于任何目的。
端点尝试运行作为计算作业在 IN 消息正文中传递的对象。它需要不同的有效负载类型,具体取决于执行类型。
157.1. 选项
Ignite Compute 组件支持 4 个选项,如下所列。
Name | 描述 | 默认值 | 类型 |
---|---|---|---|
Ignite (producer) | 设置 Ignite 实例。 | Ignite | |
configurationResource (producer) | 设置从中加载配置的资源。它可以是:URI、String (URI)或 InputStream。 | 对象 | |
igniteConfiguration (producer) | 允许用户设置编程 IgniteConfiguration。 | IgniteConfiguration | |
resolveProperty Placeholders (advanced) | 组件是否应在启动时解析属性占位符。只有 String 类型的属性可以使用属性占位符。 | true | 布尔值 |
Ignite Compute 端点使用 URI 语法进行配置:
ignite-compute:endpointId
使用以下路径和查询参数:
157.1.1. 路径参数(1 参数):
Name | 描述 | 默认值 | 类型 |
---|---|---|---|
endpointId | 必需 端点 ID (未使用)。 | 字符串 |
157.1.2. 查询参数(8 参数):
Name | 描述 | 默认值 | 类型 |
---|---|---|---|
clusterGroupExpression (producer) | 返回 IgniteCompute 实例的 Cluster Group 的表达式。 | ClusterGroupExpression | |
computeName (producer) | 计算作业的名称,它将通过 IgniteCompute#withName (String)进行设置。 | 字符串 | |
executionType (producer) | 需要 执行计算操作。可能的值有:CALL, BROADCAST, APPLY, EXECUTE, RUN, AFFINITY_CALL, AFFINITY_RUN.组件需要不同的有效负载类型,具体取决于操作。 | IgniteComputeExecution Type | |
propagateIncomingBodyIfNo returnValue (producer) | 如果底层 Ignite 操作的返回类型是 void,则设置是否传播传入的正文。 | true | 布尔值 |
taskName (producer) | 任务名称,仅在使用 IgniteComputeExecutionType#EXECUTE 执行类型时才适用。 | 字符串 | |
timeoutMillis (producer) | 触发的作业超时间隔(以毫秒为单位),该间隔将通过 IgniteComputeAllwithTimeout (long)设置。 | Long | |
treatCollectionsAsCache Objects (producer) | 设置是否将集合视为缓存对象或项目集合,以插入/更新/计算等。 | false | 布尔值 |
同步 (高级) | 设置是否应严格使用同步处理,还是允许 Camel 使用异步处理(如果支持)。 | false | 布尔值 |