Notify
描述:
提供缓存中缓存释放信号的标识符,可以选择将其与数据流的属性一起缓存。一旦在缓存中发现这个信号,在相应的wait组件持有的所有流文件都将被释放。
标签:
map, cache, notify, distributed, signal, release, 信号, 释放, 通知
参数:
如下列表中,必填参数则标识为加粗. 其他未加粗参数,则表示为可选参数。表中同时提到参数默认值设置, 并且 参数还支持 表达式语言.
名字 | 默认值 | 允许值列表 | 描述 |
---|---|---|---|
信号释放标识符 | 一个值或者根据属性表达式计算数据流的结果值,该值用来确定释放信号缓存键值 支持表达式语言 (支持流属性和变量) | ||
信号计数器名称 | default | 一个值,或者根据属性表达式计算数据流的结果值,该值用来确定信号计数器名称。当相应的Wait组件需要知道不同类型事件(如成功、失败或目标数据源名称等)发生的次数时,信号计数器名称非常有用。 支持表达式语言 (支持流属性和变量) | |
信号计数器增量 | 1 | 一个值,或者根据属性表达式对FlowFile计算的结果值,该值用来确定信号计数器增量,指定计数器应该增加多少。例如,如果在上游流中以批处理的方式处理多个信号事件,则可以立刻用该属性通知处理的事件数量。0有一个特殊的含义,它将目标计数清除回0,这在与Wait组件的'可释放的数据流计数'=0模式一起使用时特别有用,以提供“开闭门”类型的流控制。1可以打开相应的Wait组件,而0则关闭它。 支持表达式语言 (支持流属性和变量) | |
等待缓存计数 | 1 | 指定直到有信号通知缓存服务时,可以缓存输入数据流的最大数量。更多的缓存量可以提供更好的性能,因为当多个输入流文件共享相同的信号标识符时,会按信号标识符分组信号,以减少跟缓存服务的交互次数。 | |
缓存服务 | 控制器服务API: AtomicDistributedMapCacheClient 实现: CouchbaseMapCacheClient DistributedMapCacheClientService | 用于缓存释放信号的控制器服务,这些信号用来释放在相应Wait组件上排队等待的流文件。 | |
属性匹配正则表达式 | 名称与此正则表达式匹配的任何属性都将存储在缓存中,以便复制到Wait组件输出的任何数据流上。注意uuid属性是不会被缓存的;如果该值为空,则不会缓存任何属性。 |
连线:
名字 | 描述 |
---|---|
success | 释放信号成功进入到缓存中后,所有的数据流都会输出到该连线。 |
failure | 当缓存不可用,或释放信号标识符的值为null或空时,数据流将输出到此连线。 |
读取属性:
未提供。
写入属性:
名字 | 描述 |
---|---|
notified | 所有的数据流都有一个属性'notified'。此属性的值若为true,说明通知了该数据流,否则为false。 |
状态管理:
该组件不保存状态。
限制:
该组件没有限制
输入流要求:
组件必须提供输入流。
系统资源考量:
未提供。
参考:
DistributedMapCacheClientService, DistributedMapCacheServer, Wait