Repolode
iii-hq

iii-hq/iii

一个基于 Rust 的运行时,让服务、队列、定时任务与智能体通过统一的实时函数目录进行组合、发现与追踪。

Star
18,848
Fork
1,267
未关闭 Issue
100
最近提交
15小时前

这是什么?

iii 是一个用于搭建后端的引擎,把系统拆分为 worker、函数(function)和触发器(trigger)三类基本单元。worker 是任何向 iii 引擎注册的进程,例如 TypeScript 的 API 服务、Python 数据管道或 Rust 微服务。函数使用稳定的标识符,触发器声明函数在何时运行,包括直接调用、HTTP 端点、cron 定时、队列订阅和状态变化等。路由、序列化与投递由引擎统一处理。

项目提供 Compose 层,可以在 worker-compose.yaml 中声明 worker,也可以通过命令行添加到正在运行的守护进程中。新 worker 加入后会进入实时目录,其他 worker 会收到通知并可立即调用。官方提供 Node.js、Python、Rust 和 Go 四种 SDK,另有开发者控制台,用于查看 worker、函数、触发器、队列、追踪与日志。

引擎运行时采用 Elastic License 2.0 许可,SDK、命令行工具、控制台与文档则为 Apache 2.0。

核心功能

  • 01将任意进程注册为 worker,对外暴露可调用的函数。
  • 02支持 HTTP、cron、队列、状态与流等触发器,以声明式方式调用函数。
  • 03通过 Compose 守护进程在运行时添加 worker,无需重启系统。
  • 04提供 Node.js、Python、Rust 和 Go 官方 SDK。
  • 05内置控制台,可查看 worker、函数、触发器、队列、追踪与日志。

适用场景

  • 让用不同语言编写的微服务通过一组可调用函数相互协作。
  • 为 AI 智能体提供可发现、可调用、可追踪的统一能力目录。
  • 用同一种触发器模型替代分散的队列、定时任务和 HTTP 集成。
  • 在一个界面中追踪和调试跨服务的调用链路。

快速上手

  1. 1

    安装 iii 命令行工具

    按 README 中的官方说明安装
  2. 2

    启动带有 worker 的 Compose 命名空间

    iii compose --namespace dev --up
  3. 3

    向正在运行的系统添加一个 worker

    iii trigger -n dev compose::add worker=queue

使用前须知

  • 引擎采用 Elastic License 2.0 许可,属于源码可见但并非 OSI 开源协议。
  • 只有 SDK、命令行工具、控制台和文档采用 Apache 2.0,商业使用前请先确认引擎的许可条款。

标签

常见问题

iii 是什么?
一个基于 Rust 的运行时,让服务、队列、定时任务与智能体通过统一的实时函数目录进行组合、发现与追踪。 iii 是一个用于搭建后端的引擎,把系统拆分为 worker、函数(function)和触发器(trigger)三类基本单元。worker 是任何向 iii 引擎注册的进程,例如 TypeScript 的 API 服务、Python 数据管道或 Rust 微服务。函数使用稳定的标识符,触发器声明函数在何时运行,包括直接调用、HTTP 端点、cron 定时、队列订阅和状态变化等。路由、序列化与投递由引擎统一处理。
iii 可以免费使用吗?用的什么许可证?
iii 没有声明许可证。代码虽然公开,但没有许可证就没有明确的使用授权,正式使用前建议先联系作者。
iii 还在维护吗?
活跃维护中。iii 最近一次提交是在 2026年10月19日。
iii 适合用来做什么?
让用不同语言编写的微服务通过一组可调用函数相互协作。 为 AI 智能体提供可发现、可调用、可追踪的统一能力目录。 用同一种触发器模型替代分散的队列、定时任务和 HTTP 集成。 在一个界面中追踪和调试跨服务的调用链路。
iii 怎么安装和运行?
安装 iii 命令行工具 启动带有 worker 的 Compose 命名空间: iii compose --namespace dev --up 向正在运行的系统添加一个 worker: iii trigger -n dev compose::add worker=queue
在哪里获取 iii?
源代码和安装说明在 GitHub 上:https://github.com/iii-hq/iii

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目