快速可自托管的开源工作流引擎

一款名为 Windmill 的新型可自托管工作流引擎因结合了基于 Rust 的快速执行、低代码 Web UI、脚本编辑器和应用构建器而受到关注,目标是自动化内部业务流程。评论者称赞它的开发者体验、基于 PostgreSQL 的队列处理,以及在 ETL 和数据流水线、cron 替代和内部工具等任务上的灵活性,同时也将其与 Airflow、Dagster、Temporal、Retool 和 Rundeck 进行比较。围绕其定位(工作流引擎 vs. 内部应用平台)、许可模式(AGPL 加专有企业插件)以及它在已投资于其他编排和自动化栈的企业环境中的适配度,仍存在激烈讨论。

整体反响

  • 许多评论者都非常正面,称 Windmill 是他们最喜欢的自托管工具之一,并称赞它的速度、可靠性和积极的支持。
  • 也有人觉得它的营销和定位令人困惑,不确定相较于其他工作流 / 内部工具产品,它究竟要解决什么问题。

使用场景与优势

  • 报告中的真实用例包括:日常内容生成、PDF 和视频自动化、内部工具、网页爬虫、yt-dlp 任务、cron 替代方案、简单的 ELT/数据工作流。
  • 非常适合面向开发者的内部工具:后台任务、API、仪表盘、审批、事件触发脚本。
  • 有几位人士强调,自动生成的 UI、日志/可观测性,以及用于脚本的 Web UI,解决了临时 cron + shell + 分散监控带来的痛点。

性能与架构

  • 关于“最快的工作流引擎”是否重要的讨论:共识是亚秒级延迟会改善开发者体验,并支持事件流 / 低延迟用例,但并不适用于 HFT。
  • 后端使用 PostgreSQL 作为任务队列表;这引发了争论:
    • 优点:简化备份,对典型任务表来说足够好,与现代 Postgres 队列库一致。
    • 缺点:担心连接数限制、锁定、扩展性,以及“NIH vs 使用专用队列”。
  • 基准测试和图表因缺少坐标轴单位而受到质疑;后续澄清为秒,更多细节见文档。

与其他工具的定位对比

  • 对比对象包括:Airflow、Dagster、Prefect、Temporal、Rundeck、Pipedream、Retool、Budibase、node-red、n8n、BPMN 引擎,甚至 ERP/RPA 系统。
  • 有些人将其看作:
    • 主要是一个工作流引擎,带有强大的脚本能力和面向开发者的应用构建器。
    • 在更简单的流水线和计划任务场景中,可替代 Airflow/Rundeck。
  • 也有人认为它不适合复杂或高度动态的数据/ETL 流水线(在这方面 Dagster/Airflow 仍然更强),尽管 Windmill 团队声称最近新增的功能(S3、可重启 flow、ETL 易用性)改善了这一点。

对业务流程的适配性

  • 对于复杂、以人为主的业务工作流(邮件、日历、审批、客户沟通),观点分歧:
    • 有人认为,如果你愿意编写集成并逐步自动化步骤,Windmill 可以很好地发挥作用。
    • 也有人建议针对特定领域使用“流水线”技术栈(例如 VFX 风格工具、CRM、BPMN 引擎),以支持更丰富的人类工作流和日历驱动用例。

许可证、“开源”状态与企业采用

  • 核心部分采用 AGPL;SSO 和其他“企业插件”是源码可见的,并且在 10 个用户以内免费。
  • 说明澄清:
    • 通过 API 触发工作流不会强制你的应用变成 AGPL;对 Windmill 本身进行白标/扩展才会。
    • 自托管企业版按 vCPU 授权,但不会回传数据(使用情况报告有讨论,但尚未启用)。
  • 有些人认为这是接近“源码可见”的开源内核(open-core);也有人能接受 AGPL + 付费企业版。

开发者体验与可用性反馈

  • 受好评的点:带 LSP 的在线代码编辑器、VS Code 扩展、git 同步流程、YAML/OpenAPI 的“OpenFlow”规范、支持 Python、TypeScript、Go、Bash、SQL;即将支持 Ruby;也可能支持 Rust。
  • 评价不一:营销内容中的拼写检查和一些小拼写错误;定价层级和功能门槛不够清晰(例如内容搜索);目前还没有本地化。
  • 有几位建议加强信息传达和文案写作,以更清楚地突出价值主张和目标受众。