Inngest 使用介绍:功能、价格与上手指南

Inngest 是一个面向现代开发者的工作流编排平台,通过事件驱动模型简化后台任务、定时任务和 AI 工作流的构建。本文介绍其核心功能、定价方案,并提供从安装到部署的完整上手指南,帮助你快速评估并落地 Inngest。

Inngest 是一个事件驱动的工作流编排平台,专为需要可靠后台任务的开发者设计。在 AI 应用爆发式增长的今天,它凭借对长时任务、步骤重试和 AI 工作流的原生支持,成为越来越多团队的选择。

Inngest 是什么

Inngest 让你用普通函数定义工作流,通过事件触发执行。它自动处理队列、重试、状态持久化和可观测性,你无需管理基础设施。核心概念包括:

  • 事件:触发工作流的数据载体,如 user/signup
  • 函数:响应事件的代码单元,由多个步骤组成。
  • 步骤:函数内的原子操作,自动获得重试和状态保存。

这种模型特别适合 AI 场景,例如调用大模型、等待人工审核、分步处理数据。

核心功能

1. 步骤函数与自动重试

每个步骤独立执行,失败自动重试,无需编写补偿逻辑。步骤结果被持久化,函数可从断点恢复。

2. 事件驱动与扇出

一个事件可触发多个函数,实现并行处理。支持事件过滤、延迟和批处理。

3. 定时任务与 Cron

用简单语法定义 Cron 任务,替代传统调度器。支持时区设置。

4. AI 工作流支持

内置 step.ai 工具,可调用 OpenAI、Anthropic 等模型,并自动处理流式响应和长时运行。

5. 本地开发与可观测性

提供 Dev Server,本地调试体验接近生产。仪表板展示每次运行的状态、日志和重试记录。

6. 多语言 SDK

官方支持 TypeScript、Python 和 Go,可集成到现有项目。

价格方案

Inngest 采用按量付费模式,主要方案如下:

方案价格关键限制
Hobby免费每月 50,000 次步骤执行,1 个并发
Pro每月 $75 起按步骤执行量计费,更高并发
Enterprise定制专属支持、SLA、自托管选项

免费版适合个人项目和小型应用。Pro 版按超出免费额度的步骤执行量收费,具体单价随用量阶梯下降。建议从免费版开始验证,再根据执行量升级。

上手指南

第一步:安装与初始化

npm install inngest
npx inngest-cli dev

创建 inngest/client.ts

import { Inngest } from "inngest";
export const inngest = new Inngest({ id: "my-app" });

第二步:定义第一个函数

创建 inngest/functions.ts

import { inngest } from "./client";

export const processSignup = inngest.createFunction(
  { id: "process-signup" },
  { event: "user/signup" },
  async ({ event, step }) => {
    const user = await step.run("create-user", async () => {
      return { id: event.data.userId, name: event.data.name };
    });
    await step.sleep("wait-a-bit", "1h");
    await step.run("send-email", async () => {
      // 发送欢迎邮件
    });
    return { user };
  }
);

第三步:注册并触发

在 Next.js 等框架中挂载 API 路由:

import { serve } from "inngest/next";
import { inngest } from "@/inngest/client";
import { processSignup } from "@/inngest/functions";

export const { GET, POST, PUT } = serve({
  client: inngest,
  functions: [processSignup],
});

触发事件:

await inngest.send({
  name: "user/signup",
  data: { userId: "123", name: "Alice" },
});

第四步:本地调试与部署

运行 npx inngest-cli dev 启动本地 Dev Server,打开 http://localhost:8288 查看函数和事件。部署时,将 API 路由发布到 Vercel、Netlify 等平台,并在 Inngest 云端配置应用同步。

适用场景与注意事项

适合:AI 代理、长时任务、Webhook 处理、定时批处理、需要可靠重试的业务流程。

注意:步骤函数有执行时长限制,免费版并发较低。复杂工作流建议拆分步骤,避免单函数过长。

结论

Inngest 通过事件驱动和步骤函数模型,大幅降低了可靠后台任务的开发门槛,尤其适合 AI 工作流。其免费版足够上手验证,Pro 版定价对中小团队友好。建议从官方示例开始,逐步将现有后台任务迁移到 Inngest。

返回 AI 教程列表