n8n 是一款开源/源可得的可视化工作流自动化平台,通过拖拽"节点"(触发器、条件、数据处理、第三方应用、AI 等)把不同系统的数据和动作连接起来,形成可重复执行的自动化流程。
功能与特点
● 可视化工作流编排:拖拽"节点"组成流程,节点代表"触发器/动作/逻辑"。支持分支、循环、错误捕获、重试。
● 丰富集成(400+):内置数百个应用/协议节点(HTTP、Webhook、Cron、IMAP/Email、Slack/Telegram、Notion/Airtable、S3/GCS、OpenAI/Claude 等)。
● 多种触发方式:Cron 定时、Webhook HTTP 回调、事件(如表单/支付通知/邮箱来信)、队列 等。
● 数据与表达式:节点之间传递 JSON 数据,用表达式引用前一节点输出,做拼接、映射与转换。
● 本地运行与隐私:可自托管,本地或私有云部署,数据不离开你的环境;凭据加密存储,权限可控。
● 可扩展:可在 Function 节点写 JS,也可用 TypeScript 开发自定义节点,或二次开发。
● 运行模式:普通模式(轻量)、队列模式(配合 Redis 做并发/水平扩展),适合生产环境。
● 部署与运维:Docker 一键起步,数据库用 SQLite/PostgreSQL;生产推荐 PostgreSQL + Redis,配合反向代理与备份。
● 许可与商业模式:源可得(Sustainable Use License, SUL),自托管免费为主;官方提供云托管与团队/企业功能付费版。参考:n8n 许可与定价、法律与许可说明。
工作方式
● 触发器节点启动流程(如 Webhook、Cron 定时、第三方事件)。
● 数据以"items 数组"在节点间流动,每个 item 本质是一个 JSON 对象(可带二进制文件指针)。
● 流程控制节点决定走哪条路、如何合流和是否分批。
● 集成节点负责与外部世界交互(HTTP、数据库、SaaS)。
● 数据变换节点把结构整理成下游需要的样子。
● 需要时可用 Code 节点补上定制逻辑(JS/Python)。
● 错误处理、重试、节流与可观测(执行日志、输入输出快照)是工程化
核心概念
● Workflow(工作流):由若干节点构成的"流程图"。每次运行称为一次执行(Execution)。
● Node(节点):
○ 触发器节点:如 Cron(定时)、Webhook(HTTP 回调)、IMAP Email(新邮件)。
○ 动作节点:如 HTTP Request、Telegram Send Message、Notion Create Page。
○ 逻辑节点:IF 条件、Merge 合并、Split In Batches 分批、Wait 等。
○ 函数节点:Function / Function Item 支持 JS 处理数据。
● Credentials(凭据):安全保存第三方 API/服务的访问密钥。
● Expressions(表达式):{{$json.field}} 取数据,或做计算/拼接。
● Executions(执行记录):每次运行的输入输出、日志、错误都可回放调试。
场景
● 办公自动化:表单/邮件进来 → 清洗/判断 → 写入 Notion/Airtable/表格 → 通知 Slack/飞书/Telegram。
● 数据集成与轻量 ETL:定时抓取 API/网页 → 转换 → 入库(PostgreSQL/MySQL)或对象存储(S3/GCS)。
● 运维与告警:监控事件/日志 → IF 分流 → 创建工单/短信/IM 预警。
● 电商/支付流程:支付 Webhook → 校验 → 开通权限/发票/邮件通知。
● AI 流程:检索数据 → 调用 OpenAI/Claude → 结果汇总 → 渠道分发(邮件/群聊/知识库)。
适用场景建议
● 选择 n8n:
○ 你要把多个业务系统/API 串起来做"后台自动化"(定时、Webhook、数据清洗、入库、通知)。
○ 你重视数据隐私、要自托管、要复用全厂的 API/数据库。
○ 你需要可视化排错与强表达式/脚本灵活度。
● 选择 Dify:
○ 你要做"AI 原生应用/Agent",需要统一的模型接入、RAG 数据集、评测、观测、工具调用、对话状态管理。
○ 你希望一站式构建/运营/迭代 AI 应用,而不仅仅是把 AI 当一个节点。
● 选择 Coze:
○ 你要"极快上线一个能聊天并执行一些工具的机器人",并一键上架到多渠道,几乎不关心底层运维与自托管。
○ 你追求最小学习成本与平台内生态(渠道、插件)带来的分发。