23|工作流编排(下):实现执行引擎,让工作流跑起来
Robert

你好,我是 Robert。
22 讲我们把工作流的元数据存进去了,三张表能完整保存节点和连线。但它只是一份静态配置,存进去读出来,就是不会动,这一讲让它动起来。怎么让它动起来呢?就是我们这节课要讲的执行引擎。
执行引擎是什么
老规矩,不懂先问。
工作流执行引擎是什么概念?
它和 22 讲存的工作流配置是什么关系?
怎么被触发?从用户发消息到工作流执行完毕返回结果,完整链路是什么样的?
不要讲理论,结合 Hify 智能客服的场景解释。
Claude Code 没有凭空解释,它先把现有代码读了一遍:ChatServiceImpl.java、WorkflowServiceImpl.java,然后基于真实代码说清楚关系。

它的回答是:WorkflowServiceImpl 是我们上节课实现的工作流的元数据的存储。它是管配置的,执行引擎是另一个东西。WorkflowServiceImpl 只有 CRUD,也就是工作流配置的 CRUD。然后执行引擎是下一步要建的。
它用了个比喻,来说明元数据和引擎的关系。食谱放在那里什么都不会发生,厨师拿到食谱才能把菜做出来。而工作流配置就是食谱,我们这一节要实现的执行引擎就是厨师。来看下图:

执行引擎是从数据库加载 22 讲存的那份配置,构建 nodeMap + edgeMap,然后从起始节点开始一个节点一个节点地执行,最终结果通过 SseEmitter 推给用户。用户侧感知不到区别,收到的还是一样的 SSE 事件流。
公开
同步至部落
取消
完成
0/2000
笔记
复制
AI
- 深入了解
- 翻译
- 解释
- 总结
仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《Claude Code 企业级全链路开发实战》,新⼈⾸单¥59
《Claude Code 企业级全链路开发实战》,新⼈⾸单¥59
立即购买
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
登录 后留言
精选留言
由作者筛选后的优质留言将会公开显示,欢迎踊跃留言。
收起评论