当采购申请让系统“卡死”:一个技术问题背后的用户体验启示
一个让所有人头疼的场景
想象一下这个画面:采购经理小王在Webchat上输入“采购10部电机”,点击发送。系统开始“思考”,转圈圈,然后……继续转圈圈。1分钟过去了,2分钟过去了,小王看着那个转动的加载图标,开始怀疑是不是网络断了,或者系统又崩溃了。
与此同时,隔壁工位的小李在飞书上发了同样的消息,5秒钟后,系统就回复:“已确认采购10部伺服电机,预算9万元,是否提交审批?”小李点击“确认”,整个流程行云流水。
同样的公司,同样的系统,同样的采购需求——为什么体验天差地别?
这不是一个虚构的故事。在我们的客户现场,这个问题真实存在。而解开这个谜题的过程,让我们对系统架构有了更深的认识。
两套路径:一个系统里的“双轨制”
经过深入排查,我们发现Webchat和飞书虽然面向同一个业务系统,但走的却是完全不同的技术路径。
Webchat的路径是这样的: 用户在输入框输入“采购10部电机” → 系统识别关键词“采购” → 调用一个旧的后端模块 → 这个模块直接运行采购流程 → 整个流程在后台完整执行,包括等待领导确认的环节 → 前端一直在等待返回结果,卡住不动
飞书的路径是这样的: 用户在飞书发送消息 → 系统识别关键词 → 调用新的调度模块 → 新模块把采购流程分成两步:先快速返回确认信息,等用户确认后再执行后续 → 用户收到确认提示,点击后流程继续
问题的核心在于:Webchat和飞书虽然都在做同一件事,但后端走的完全是两套代码。Webchat走的是“老路”,飞书走的是“新路”。
为什么Webchat会“卡死”?
深入代码后,我们发现了一个关键问题:当用户在Webchat上发起采购申请时,系统实际上忽略了用户输入的具体内容。
无论你说“采购10部电机”还是“采购5把椅子”,系统内部执行的都是一组硬编码的参数:产品=伺服电机,数量=10,预算=90000。用户的意图和参数被完全忽视了。
更糟糕的是,Webchat走的旧路径执行的是“完整模式”。这个模式下,采购流程包含8个步骤,其中第7步是“等待老板确认”——
系统会创建一个确认文件,然后每隔1秒检查一次这个文件的状态。如果在1分钟内没有人通过特定接口确认或拒绝,系统会自动批准。
问题在于:这个等待过程是同步的。前端发起的HTTP请求一直挂在那里,直到整个流程结束(1-2分钟)才会返回。用户看到的,就是那个不停转动的加载图标。
飞书为什么“快”?
相比之下,飞书走的新路径采用了“两阶段”设计:
第一阶段:快速确认 系统只执行前6个步骤(不需要等待确认的步骤),然后立即返回一个确认提示给用户:“已识别采购需求,确认执行吗?”
第二阶段:后续执行 用户在飞书上点击“确认”后,系统再继续执行剩余的步骤。
这种设计把原来的“同步阻塞”变成了“异步交互”。用户不再需要盯着加载图标发呆,而是主动参与决策。
前端也有“坑”
除了后端的问题,前端代码也有一个微妙的缺陷。
Webchat前端有两个不同的采购调用函数:一个用于关键词匹配输入,一个用于快捷按钮。这两个函数虽然调用的是同一个后端接口,但处理返回结果的方式不同。
更关键的是,其中一个函数在发送请求之后才绑定消息接收处理函数。这意味着,如果后端在请求返回之前就推送了一些消息,这些消息就会被“丢”掉,用户永远看不到。
修复方案:让体验统一
问题找到了,修复方案也就清晰了。我们梳理了三个层次的修复方案:
方案一:重构后端路由(推荐) 把Webchat的后端入口从旧模块改接到新模块,让Webchat和飞书走同一套代码。这样,Webchat也能享受到“两阶段”设计的优势,不再卡死。
方案二:改造旧模块 如果不想动路由结构,也可以改造旧模块,让它也采用“先确认后执行”的模式。核心是去掉那个阻塞的等待环节,改为返回确认提示。
方案三:最小化修复 只修改旧模块的采购执行函数,让它不再执行完整的8步流程,而是快速返回确认数据。前端再根据返回结果弹出确认对话框。
这个故事告诉我们什么?
这个案例揭示了一个普遍的技术问题:当系统存在多条路径时,它们的体验差异可能比想象中大得多。
用户不会关心你用的是哪个模块、哪条路径。他们只关心:为什么在Webchat上卡死,在飞书上却很快?为什么同样的操作,体验完全不同?
作为技术团队,我们需要反思:
- 新功能上线时,旧功能是否被遗忘了? - 不同的前端入口,是否共享了相同的后端能力? - 用户体验的一致性,是否被纳入了技术评审的考量?
BossAgents能做什么
在BossAgents(左帮右臂),我们专注于解决这类“隐形”的技术问题。我们的智能体平台不仅提供标准化的AI能力,更关注系统架构的合理性和用户体验的一致性。
具体来说,BossAgents可以帮助企业:
- 统一业务入口
- 优化异步流程
- 消除技术债务
- 智能调度引擎
如果您也在为系统响应慢、用户体验不一致而烦恼,不妨想想:是不是也有两套“并行路径”在悄悄运行?BossAgents可以帮助您找到这些隐藏的问题,让每个用户都能获得流畅、一致的体验。
毕竟,好的系统应该让人感觉不到它的存在——而不是让人盯着转动的加载图标,等待那漫长的1分钟。
BossAgents