Skip to content

批处理 (batch)

将多个消息批量合并为一个数组消息,或按时间/数量分组。

输入

  • payload (any): 要批处理的消息内容

输出

  • payload (array): 批量合并后的消息数组

详细说明

批处理节点用于将一组消息收集成数组后一次性输出,支持按数量、时间、间隔等方式分组。

配置选项

  • 分组方式: 按消息数量、时间间隔、间隔消息
  • 分组大小: 每组包含的消息数量
  • 超时: 等待消息的最大时间
  • 丢弃不完整批次: 可选,是否丢弃未满的批次

示例

按数量分组

javascript
// 配置:每5条消息分为一组
// 输入5次
msg.payload = 1;
...
msg.payload = 5;
// 输出
msg.payload = [1,2,3,4,5];

按时间分组

javascript
// 配置:每10秒输出一次
// 10秒内收到的所有消息合并为数组输出

丢弃不完整批次

javascript
// 配置:每3条为一组,丢弃不满3条的批次

应用场景

  • 批量数据处理
  • 周期性数据上报
  • 日志收集

注意事项

  • 批处理大小和超时需合理设置
  • 丢弃不完整批次时注意数据丢失
  • 批处理节点会缓存消息,注意内存占用

蜀ICP备2025139593号