第 156 章 Ignite Compute 组件
作为 Camel 2.17 版提供
Ignite Compute 端点是一个 camel-ignite 端点,它允许您传递一个 IgniteCallable、IgniteCallable、IgniteRunnable、IgniteClosure 或它们的集合来在集群中运行 计算操作。
此端点仅支持制作者。
端点 URI 的主机部分是符号链接端点 ID,它不用于任何目的。
端点试图运行作为计算作业在 IN 消息正文中传递的对象。根据执行类型,它需要不同的有效负载类型。
156.1. 选项
Ignite Compute 组件支持 4 个选项,它们如下所列。
名称 | 描述 | 默认 | 类型 |
---|---|---|---|
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
使用以下路径和查询参数:
156.1.1. 路径名(1 参数):
名称 | 描述 | 默认 | 类型 |
---|---|---|---|
endpointId | 必需 端点 ID (不使用)。 | 字符串 |
156.1.2. 查询参数(8 参数):
名称 | 描述 | 默认 | 类型 |
---|---|---|---|
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) | 触发的作业的超时间隔(以毫秒为单位),将通过 IgniteCompute#withTimeout (long)设置。 | Long | |
treatCollectionsAsCache Objects (producer) | 设置是否将集合视为缓存对象,还是作为项目集合来插入/更新/计算等。 | false | 布尔值 |
同步 (高级) | 设置同步处理是否应当严格使用,还是允许 Camel 使用异步处理(如果受支持)。 | false | 布尔值 |