什么是 iiiiii 是实时编排、扩展和监控堆栈中每个服务的最简单方式。每个后端在编写第一行业务逻辑之前都始于一个项目。队列、定时任务、HTTP、状态管理、可观测性、代理和沙箱通常都有各自的集成方式而 iii 将这些整合为一个实时系统界面。工作模式通过 iii worker add queue、iii worker add agent、iii worker add sandbox 等命令添加工作进程每个工作进程都会加入实时目录其他工作进程会收到通知并能立即调用它。可以在 workers.iii.dev 浏览可用的工作进程。代理的工作模式也是如此当任务需要系统不具备的功能时代理可以添加工作进程、发现其功能、调用这些功能并追踪执行情况这和开发者使用的界面是一样的。三个基本要素Worker工作进程、Function函数和 Trigger触发器构成了整个概念模型。工作进程是向 iii 引擎注册然后注册触发器和函数的进程。一个 TypeScript API 服务是一个工作进程一个 Python 数据管道是一个工作进程一个 Rust 微服务也是一个工作进程。只需几行代码任何功能都能转化为工作进程。工作进程还能在运行时创建其他工作进程这样代理和应用程序就能在系统运行时对其进行扩展。触发器是任何能使函数运行的因素。它可以是对函数的直接调用、一个 HTTP 端点、一个定时任务计划、一个队列订阅、一个状态变化、一个流事件等等。触发器是声明式的工作进程定义“当某件事发生时运行这个函数”iii 负责路由、序列化和传递。函数是具有稳定标识符例如 content::classify、orders::validate的工作单元。它接收输入、执行工作并可选择返回输出。函数存在于工作进程中。通过将服务的所有功能映射到这三个基本要素iii 创建了一个既易于编排又完全可观测的开发流程。使用前后的变化使用 iii 之前新的可观测性工具需要进行无数次集成。新的代理框架有单独的重试配置、单独的追踪和单独的超时设置。新的队列需要进行供应商评估、采购还需数周的集成时间。使用 iii 之后使用 iii worker add observability 和 iii worker add queue 即可完成操作。这些功能会被添加到系统中可追踪且可调用。平台团队发布工作进程应用程序团队注册函数并声明触发器代理使用相同的目录和函数调用。扩展 iii 只需使用 iii worker add编排 iii 只需调用函数监控 iii 只需打开追踪记录。快速开始bashiii project init myapp # 搭建项目cd myappiii # 启动引擎如果需要先安装 iii请参考快速入门指南进行完整的操作步骤。添加工作进程使用 iii worker add 为项目安装新功能Node.jspnpm add iii-sdk 或 npm install iii-sdkPythonpip install iii-sdkRust将其添加到 Cargo.toml 中安装代理技能安装 iii 可读取的参考资料npx skills add iii-hq/iii/skills。这些技能涵盖了 iii 的所有基本要素如 HTTP 端点、队列、定时任务、状态管理、流、自定义触发器等等完整列表可查看 skills/ 目录。控制台iii-console 是一个用于检查工作进程、函数、触发器、队列、追踪记录、日志和实时状态的开发和运维控制台。具体的设置和使用方法可参考控制台文档。仓库结构目录说明README项目说明engine/iii 引擎Rust - 核心运行时、模块和协议engine/README.md引擎说明sdk/Node.js、Python 和 Rust 的 SDKsdk/README.mdSDK 说明console/开发控制台React Rustconsole/README.md控制台说明skills/代理可读取的参考资料skills/README.md技能说明website/iii 网站website/docs/文档网站Mintlify/MDXdocs/README.md文档说明完整的单仓库布局、依赖链和 CI/CD 细节可查看 STRUCTURE.md。示例具体的分步教程可参考快速入门指南。资源文档CLI 与引擎控制台示例贡献指南许可证iii 各部分的许可证如下engine/Elastic License 2.0sdk/Apache License 2.0console/Apache License 2.0docs/Apache License 2.0website/Apache License 2.0引擎运行时采用 Elastic License 2.0ELv2许可所有 SDK、CLI、控制台、文档和网站均采用 Apache License 2.0 许可。更多详细信息可查看 CONTRIBUTING.md。那么你是否准备好尝试使用 iii 来简化开发流程了呢