博客
关于我
Node-RED中配置周期性执行、指定时间阶段执行、指定时间执行事件
阅读量:802 次
发布时间:2023-02-16

本文共 2139 字,大约阅读时间需要 7 分钟。

Node-RED周期性执行配置示例

Node-RED是一种流程自动化工具,能够帮助开发者快速构建和部署自动化解决方案。其中,inject节点是一项强大的工具,能够配置周期性执行功能,适用于需要定时触发任务的场景。以下将从配置示例入手,详细讲解如何在Node-RED中实现周期性执行。

配置说明

inject节点的核心配置参数包括:

  • repeat:决定是否重复触发节点,true表示周期性执行,false则只执行一次。
  • crontab:配置定时触发规则,支持Linux的crontab格式。
  • once:设置是否仅执行一次。
  • onceDelay:在第一次执行后延迟触发。
  • 示例一:简单的周期性执行

    以下是一个简单的周期性执行配置示例:

    {  "id": "71107f63.c2686",  "type": "inject",  "z": "f8f370d9.7ccc3",  "name": "",  "props": [    {      "p": "payload"    },    {      "p": "topic",      "vt": "str"    }  ],  "repeat": "2",  "crontab": "",  "once": false,  "onceDelay": 0.1,  "topic": "",  "payload": "",  "payloadType": "date",  "x": 190,  "y": 280,  "wires": [    ["6866ece6.3b1964"]  ]}

    该配置表示每2次执行一次任务,crontab字段为空时,默认使用*/1 * * * *,即每秒执行一次。

    示例二:指定时间阶段执行

    如果需要在特定时间段内执行任务,可以通过crontab字段设置小时、分钟、秒等时间字段。例如,以下配置将任务定在每天的上午9点至11点之间执行:

    {  "id": "2ee46c27fe222be5",  "type": "inject",  "z": "4bc32962b964d23d",  "name": "",  "props": [    {      "p": "payload"    },    {      "p": "topic",      "vt": "str"    }  ],  "repeat": "",  "crontab": "*/1 0 * * 1,3,5",  "once": false,  "onceDelay": 0.1,  "topic": "",  "payloadType": "date",  "x": 190,  "y": 360,  "wires": [    ["26092280afbca76a"]  ]}

    需要注意的是,crontab格式与Linux cron表达式一致,具体格式为:

    分钟 分钟 小时 天 日_of_month 月 day_of_week

    例如,*/1 0 * * 1,3,5表示每分钟执行一次,限定在星期一、星期三和星期五的上午9点。

    示例三:指定时间执行

    如果需要在特定时间执行任务,可以将crontab设置为固定时间。例如,以下配置将任务定在每天的12点执行:

    {  "id": "9e4a370a93991fdc",  "type": "inject",  "z": "4bc32962b964d23d",  "name": "",  "props": [    {      "p": "payload"    },    {      "p": "topic",      "vt": "str"    }  ],  "repeat": "",  "crontab": "00 12 * * 1",  "once": false,  "onceDelay": 0.1,  "topic": "",  "payloadType": "date",  "x": 190,  "y": 500,  "wires": [    ["4af3067548fcc9f6"]  ]}

    crontab设置为00 12 * * 1,表示每天的上午12点执行一次任务。

    注意事项

  • repeatcrontab的综合使用repeatcrontab可以结合使用。repeat用于控制执行频率(如每秒、每分钟),而crontab则用于指定具体的时间点。例如,crontab="*/5 * * * *"表示每5秒执行一次,且在每秒内都执行一次。

  • once参数:如果需要仅执行一次,可以设置once=true。此时repeat参数将被忽略。

  • onceDelay参数onceDelay用于在第一次执行后延迟触发,通常用于防止频繁触发节点带来的性能负担。

  • topic参数topic用于指定节点的输出主题,主要用于节点间通信。如果不需要子节点订阅,可以设置为空字符串。

  • 通过以上配置示例,可以轻松实现Node-RED中的周期性执行功能。在实际应用中,可以根据具体需求灵活配置crontabrepeat参数,满足不同的自动化场景需求。

    转载地址:http://fsjfk.baihongyu.com/

    你可能感兴趣的文章
    NSError 的使用方法
    查看>>
    nsis 安装脚本示例(转)
    查看>>
    NSJSON的用法(oc系统自带的解析方法)
    查看>>
    nslookup 的基本知识与命令详解
    查看>>
    NSOperation基本操作
    查看>>
    NSRange 范围
    查看>>
    NSSet集合 无序的 不能重复的
    查看>>
    NSURLSession下载和断点续传
    查看>>
    NSUserdefault读书笔记
    查看>>
    NS图绘制工具推荐
    查看>>
    NT AUTHORITY\NETWORK SERVICE 权限问题
    查看>>
    NT symbols are incorrect, please fix symbols
    查看>>
    ntelliJ IDEA 报错:找不到包或者找不到符号
    查看>>
    NTFS文件权限管理实战
    查看>>
    ntko web firefox跨浏览器插件_深度比较:2019年6个最好的跨浏览器测试工具
    查看>>
    ntko文件存取错误_苹果推送 macOS 10.15.4:iCloud 云盘文件夹共享终于来了
    查看>>
    ntp server 用法小结
    查看>>
    ntpdate 通过外网同步时间
    查看>>
    ntpdate同步配置文件调整详解
    查看>>
    NTPD使用/etc/ntp.conf配置时钟同步详解
    查看>>