这里是全站文章的归档入口,下面是按时间倒序排列的全部文章。若想按主题浏览,请从首页的专题分类进入。
《互联网产品的 AI 架构·模型接入与能力边界》7.3 解析失败的重试、修复与降级
从「回声」客服辅助一次修复仍然失败的工单 JSON 出发,说明解析失败为什么要先分类再决定是否修复,修复提示如何把 Schema、失败明细和原始输出隔离,修复预算为什么同时限制次数、时间盒与提示长度,并给出失败后转人工队列或模板降级的可测试实现。
posts
这里是全站文章的归档入口,下面是按时间倒序排列的全部文章。若想按主题浏览,请从首页的专题分类进入。
从「回声」客服辅助一次修复仍然失败的工单 JSON 出发,说明解析失败为什么要先分类再决定是否修复,修复提示如何把 Schema、失败明细和原始输出隔离,修复预算为什么同时限制次数、时间盒与提示长度,并给出失败后转人工队列或模板降级的可测试实现。
libraryd 的 ISBN 校验规则要允许客户以 jar 形式追加,不能每次改规则都重新打包整个服务。本节从三层类加载器与双亲委派讲起,实现 PluginClassLoader 的 findClass 与 findResources,用 META-INF/services 和 ServiceLoader 真正加载一次插件 jar,并记录类加载器身份。
企业客户签合同前要一份 DPA。本文清点 7 个子处理者,把 28 页条款拆成六组,逐条核对用 6 小时,抓出保留期、子处理者披露与删除义务三处缺口,并给出 30 天变更通知与每年 2 小时复核的两页流程,以及哪些缺口必须在签约前补齐。
客户发来 148 道安全问卷,他第一次填了 22 小时。本文把题目分成 12 类,按已有证据 101、部分 27、无 14、不适用 6 归档,用 23 份证据建成答案库,把下一份压到 6 小时,一年四份省下 64 小时。
首次接触到签约 96 天里,真正写着「等」的是内部审批 28 天、安全审查 21 天、采购下单 19 天与法务 14 天。本文画出六个角色与一张流程表,说明答案库能把安全审查从 21 天压到 7 天,全周期从 134 天缩到 120 天。
九家询价、四份安全问卷、两次试点,最后只成交一家。本文把企业销售拆成 96 小时售前、26 小时工程与 8 小时实施,算出 130 小时的单客成本、138.5 美元的回本时薪与 45.5% 的收入集中度,并说明为什么按赢率摊才是真成本。
十项指标、四维权重与一次季度复测,把性能从感觉变成 1.90 到 4.03 的可复算分数。本文给出十项指标的阈值与采集点、四条扣分依据、4 小时复测的分钟级安排,说明一个人的全年 40 小时预算究竟该优先花在能被验收的地方。
周五发布把 API p95 从 320 毫秒推到 980 毫秒,整整 64 小时后才发现。本文复算一年 26 次发布的门禁 3.0 小时、两次真回归 2 小时与一次 6 分钟回滚,并给出四项预算进 CI 的检查表与失败动作。
请求从 50 万涨到 62 万,账单却从 210 美元降到 118。本文拆开五项金额与五个驱动量,复算每千次请求 0.42 到 0.19、传输 700 到 190 KB、年省 1,104 与时薪门槛 27.6,并给出一份月度核对清单。
登录页 3.6 秒里有 1.6 秒花在七个第三方标签上。本文按供应商拆开 640 KB,用删 3、延迟 2、按页加载 2 压到 4 个标签 180 KB,并复算 460 KB 的去向、1.5 秒的结果以及 3 小时的投入。
libraryd 的每个仓储写方法都包着 begin/commit/rollback,复制到第三个实现时已经很难保持一致。本节用 JDK 动态代理把 TransactionManager.inTransaction 接到仓储接口上,处理默认方法、Object 方法和受检异常,并说明为什么代理只能代理接口、自调用为什么会绕过它。
导出平均三十四秒、网关三十秒就断:用户重试三次得到三份 1.4 MB 文件。改成受理四秒、后台十二秒完成后,每月二百一十次导出的等待从 1.98 小时降到十几分钟;本文把三类任务、两个并发槽与三次退避逐项算清,并给出八条验收动作。
权限改完十一分钟仍看到旧列表:浏览器六十秒、CDN 三百秒、应用三百秒叠成六百六十秒;静态七成二命中九成八、动态两成八命中五成五,合出八成六。本文把三条写后失效规则、每月八万七千次回源与四小时投入逐项算清,并给出八条可演练的验收动作。
列表页 8 秒来自 100 个项目各 12 次查询。本文把 1,200 次 N+1 拆成一条主查询加两个聚合,配三个索引压到 3 次、0.35 秒,并复算每天 1,008 秒降到 44 秒与 7 小时投入约 26 天的回本。
首屏 4.2 秒由四段构成,412 KB 里 JS 占 214。本文拆开每一段的归属,用路由拆分、字体子集化与图片格式三项动作,把首屏压到 168 KB、LCP 降到 1.8 秒,并复算省下的 244 KB 与 5 小时投入。
他把首屏图片压掉 40%,LCP 只从 4.2 秒变成 4.1 秒,真正的阻塞是 1.8 秒的字体加载。这篇讲三个测量口径各自的盲区、一次误判的复盘,以及每月 12,600 条 RUM 数据只占 5.0 MB 的测量成本。
他的首页在 Lighthouse 拿了 98 分,客户还是说慢。于是他把「快」写成四项预算、五条路径的二十个格子和一年四十小时的时间表,再用每月账单验证投入是否划算,并算出 27.6 美元的回本时薪与 1,104 美元年省。
账号能被认出来之后,服务端还要回答这次登录是否可信、找回请求能否放行。本文把设备变化、异地、失败频次与行为异常折算成可解释的风险分,给出放行、挑战、阻断三档动作与带期限的锁定策略,讨论找回证据各自能证明什么,并用 internal/accountrisk 的 Go 实现、审计记录和五组表驱动测试说明风控如何避免变成永久封禁。
libraryd 的借阅方法既要记审计,又要在目录服务短暂超时时重试,手写 try/catch 会把业务代码淹掉。本节定义 @Audit 与 @Retry 两个运行时注解,用反射读取 action 与重试参数,实现一个带退避的调用器,并说明保留级别、默认值和幂等性边界。
十四项做完,他一个人以为安全收工,直到一张二十项的验收表把剩下六项摊开:四维权重、2.60 的现状与 3.91 的目标之间,差的不是工具,而是每季度四次的 1.5 小时演练、一条能被客户复核的证据链与一次不给自己留面子的诚实扣分。