乐于分享
好东西不私藏

从精益到软件工程,系统论视角下的运筹学

从精益到软件工程,系统论视角下的运筹学
我们很多技术管理者在各自领域进阶中,都难免碰到类似的场景:在一些项目和产品开发中,团队人数大幅增加交付速度、质量却没有显著变化,也就是人月神话里提到的“焦油坑”困境;另外一种境况,代码量成倍增加,客户感知价值却没同步增长。如何破局解决呢,短期之法确实考验头和团队的能力,但不是我今天想要分享的,我想从系统论角度来看,如何较大范围的,从根治到规避此类困境的一些个人经验和思考。

分享一个十年前我在老东家S公司自身经历的一个故事:

最初,历时近两年带领团队为公司在研的一款主力产品X/E系列构建了一套全新的软件业务架构,这套架构支撑了该产品系列每年数亿元的销售,X系列产品在所属细分赛道得到了市场和用户的认可。21年神舟十二号载人飞行成功,X5作为首个驻天和核心舱的国产医学影像设备。据说去年25年,时隔近十年还有大几千台的年销量,我和当时的领导,一起带领团队构建的这套软件原型架构,是自己在系统架构、项目管理、需求管理、软硬件技术穿透能力多维度高强度、高专业密度个人交付的阶段峰值,这个产品的开发有着数不清的技术难点和关键技术,这是一个难忘的两年日夜,高压之下几次连续日夜解决团队难题到发烧失声,再到突破问题解决,身体慢慢恢复,这种个人的破颈习惯给自己和家人都也带来太多副作用,对身体健康没有应有的敬畏之心,日夜高强度不间断思考,学习,打破个人边界在自己计划时间内解决问题突破瓶颈,这种方式成了自己过去的一种惯有手段,给我带来很多无法挽回的副作用,其实不建议大家学习。考虑这款产品仍然是行业中在线产品中,一款有生命力的产品系列,出于对老东家产品核心的考量,就不在文中分享这些细节了。
X系列后,公司在线的S系列软件交付瓶颈明显,在领导争取和老板的支持下,软件小伙伴们众志成城(初生牛犊不怕虎),团队用了半年多时间分几个阶段完成了S系列软件用X系列软件架构的替换,时隔近十年,我仍会多次午夜梦回,记起那半年的日日夜夜,犹如在黄土飞沙的战场上,将士们金戈铁马,自己和骨干们又在一起推演方案,碰到一个个难题专题攻关,我不断的指挥给出方案,时常一个难题一天换7,8个方案不断尝试解决,一直到深夜终于解决掉的畅快和伙伴们的喜悦......,最终我们用X系列这套架构替换了公司主力在线产品,外研所L先生的S系列架构。这是一套沉淀和穿越20年+的百万级代码软件平台,单函数近万行,全局变量数以千计到上万个,一个全局变量200多个文件引用......。
硬件和系统方案保持不变,软件架构替换后,32位切换到了64位,上百个汇编算法和数以千计的算法、上万的图像参数完成切换和替换,实现让人咋舌的渲染刷新机制完成基础架构的切换,最终软件架构替换成了X系列软件架构,扩展性和系统方案可编辑性得到了空前的提升,S系列产品重新焕发了生命力,美研团队方案能力和整体研发实力得到了释放,在很多关键性能方向取得了突破,市场端的反馈正面,公司上下得到空间的鼓舞。【S系列这是一套见证和担当了从90年代到2010+近30年+的软件平台,无论如何从产品价值维度还是硬件发展的技术穿越角度,都要为这一代大神们致敬】
第三步,这套X系列架构替换了另一个外研所中心预研中的高端软件平台(感谢外研所S带头人和团队无私的支持,还记得在美研冬天一起度过的几个日日夜夜,L博士调侃我,上一秒倒时差还在迷糊状态,一说到软件时,我就从瞌睡中神采奕奕的恢复了,言辞犀利......,很开心和美研团队一起分享设计互相学习的过程,和优秀的人一起,总是让人身心愉悦,和一群坦诚、聪明、包容的伙伴一起工作,打破常规破局成就传奇,更是一件美事。至此,完成了从单产品到全产品线的跨越——公司级的全平台统一软件架构正式成型。
在这个架构统一的过程中,团队同步搭建了CI/CD 流水线和平台化开发架构,实现了多产品线之间的代码级无缝复用。最终效果,用了历时六年时间,发展至上百人团队,将团队的人均效率提升了五倍。这里强调的是效率而非效能—— 不是每个人多做了多少事,而是做同样的事,需要的时间和人力大幅缩短。效率提升的背后不是加班或堆人,而是架构统一、CI/CD 流动、平台化复用这几个维度相互咬合的结果。这个过程也是我从一个技术Leader到管理角色转变的过程,有和领导学习的,也有很多老东家人事引入的管理培训,还有很多个自己为解决现实团队问题自学的理论和实践磋磨,非常感激这段时光对我个人的打磨与蜕变,感激每一位让我成长的伙伴。
在对软件工程和系统论的长期学习与实践中,后来离开S老东家以后,去传世创业的几年,先后经历了采购生产供应链的建设与发展,学习通过精益生产的思想解决了我们的现实问题,近期在离开汇吉最后一站的主管精益部门,用精益思想再次取得阶段性胜利,就像一个圆圈一样,在精益这套方法学里发现一个有趣的对照:丰田在物理世界做的事,和我们在数字世界可以做的事,底层逻辑出奇一致,就像是两种语言汉语和英语讲着同一个团队向上披荆斩棘的故事。精益思想提供了一套成熟的问题暴露和解决范式,软件工程则在数字世界给出了同构的镜像
软件人员的五倍的效率提升,还是传世生产的十倍月产能提升,亦或是精益部门信息化产品的订单成果,都是一套组合拳的系统效应。拆开来看,是五个维度共同作用的结果:系统论的全局最优设计防御式编程的问题放大机制CI/CD 的流动哲学平台化复用的杠杆效应、以及业务- 技术 - 组织的三层映射带来的结构性优势。这五个维度不是各自独立的技巧,而是相互咬合的一套系统—— 就像精益生产中,准时化、单件流、安灯绳、自化、标准作业缺一不可。

一、源头对照:暴露问题、放大问题、解决问题

精益思想的两大支柱——准时化和自化—— 本质上是一套 “柔性交付、发现问题、停止异常、根治根因” 的范式[1]。
大野耐一刚推行这套系统时,干了一件反常识的事:直接把工序间的库存抽走。产线几乎立即停了,所有人都指责他。他说:“停得好!现在我们知道设备会坏、换模太慢,以前全被库存盖住了。”[2]
这就是第一层逻辑:抽走缓冲,暴露问题。
但丰田没止步于此。他们给产线装上了安灯绳—— 任何工人发现异常,一拉绳,整条线停,主管必须立刻到场解决。[3]这是第二层逻辑主动放大问题,倒逼立即解决。这和软件工程中防御式编程的原则完全一致防御式编程的核心是:在系统最前端检查输入,一旦不符合预期,立即失败(Fail Fast),而不是带着错误继续运行。一个断言触发,进程崩溃,看似代价极大,实则把隐性数据腐化变成了最高优先级事件。这套机制是效率提升的第一块基石—— 问题不被掩盖,解决速度自然加快。

维度

精益(物理世界)

软件工程(数字世界)

暴露问题

抽走库存,让设备故障无处可藏

移除需求积压,暴露交付瓶颈

放大问题

安灯绳拉停全产线,强制响应

断言/ 防御式设计,Fail Fast,错误不可忽视

解决根因

五个为什么,现地现物

根因分析,修复代码而非绕过缺陷

固化标准

防错装置、标准作业

自动化测试、CI 检查门禁

抽走库存是撕掉创可贴,系上安全灯是把伤口连上警报器。这两套哲学的共识是:让扯皮的成本高于解决问题的成本,内耗自然消失

二、系统论与全局最优:从人月神话到技术栈穿透

管理与工程的数学本质:是整套运筹学+而非简单的线性规划。在深入软件工程的困境之前,有必要先厘清一个根本性的认知问题:管理和工程的数学本质是什么?
很多管理者的直觉是线性规划——投入和产出成正比,加人加速,堆资源提效率。这种直觉在处理简单系统时成立:搬砖的工人翻倍,进度确实接近翻倍。但软件开发的残酷现实是:它很少情况是一种线性规划问题,所有资源分配、流程调度、多目标平衡、系统优化本质都是运筹学范畴。
管理的数学本质是运筹学,战术层面是统计学和信息论的结合。运筹学的核心不是寻找线性约束下的极值,而是在多变量、多约束、非线性的复杂系统中寻找全局最优解或近似最优解。资源配置、调度优化、排队论、博弈论—— 这些都是运筹学的经典分支,也都是软件工程管理的日常。
大型团队的交付过程,恰恰是一个典型的非线性规划问题。目标的提升和资源的投入之间不是直线关系,而是充满拐点、边际递减甚至负增长的复杂曲线。一个五人的团队效率很高,加到二十人可能效率开始下降,加到五十人、一百人如果不改变组织方式,效率可能断崖式下跌。这就是非线性—— 局部的最优解不代表全局的最优解,局部的最优路径甚至可能通向全局的陷阱
《人月神话》用半个世纪的实践数据,反复验证了这一点。焦油坑与人月神话。
软件工程有一条被反复验证的规律:人数和进度不可互换。向一个已经延期的软件项目增加人手,只会让它更延期(其实在个人实践中发现,系统、硬件、结构等专业研发同样使用)。这条规律最早由Frederick Brooks1975 年出版的《人月神话》中系统阐述,基于他在IBM System/360 巨型操作系统项目中的亲身教训。[11]
Brooks用一个至今让人心有戚戚的比喻来开篇——“焦油坑”。大型软件项目就像史前巨兽陷入的焦油坑,表面看不出危险,一旦踏入就难以脱身。即便强大的团队也难逃进度延误、成本超支的宿命。Brooks 揭示,这种困境并非源于技术能力不足,而是软件开发本质上具有“复杂且不可见” 的属性—— 硬件开发的物理实体可见可控(也只是相对而言,只是爆发的周期频次、感知程度不同而已),软件开发的抽象逻辑却既看不到也摸不着。
这种不可见性带来的后果极为严峻:完成20% 的代码并不代表项目进度到了 20%集成阶段往往会暴露大量隐藏问题;模块单独测试正常,组合起来却因接口矛盾引发系统性故障;修改一处逻辑可能牵一发而动全身,形成“补丁摞补丁” 的混乱局面。更麻烦的是,当项目延期时,管理者的本能反应是“加人”—— 而 Brooks 指出,新加入者需要培训,需要与现有团队沟通,沟通成本呈几何级增长。某操作系统项目因进度滞后增派30 人,最终交付时间反而延长两倍,新增人员的培训成本与沟通损耗成了主要拖累。
人月的神话在于它暗示人员数量和时间可以相互替换——但软件不是搬砖,不是摘棉花。软件是逻辑的编织,多一个人不会让织布机转得更快,只会让经纱和纬线的交叠更加复杂。从运筹学的视角看,这本质是一个非线性规划问题:沟通成本随人数平方增长,协调开销随规模指数上升,简单的线性外推必然失效
大团队的系统集成之痛,如果说《人月神话》讲的是单个项目的非线性困境,那今天大型技术组织面临的问题要再放大一个量级——多产品、多项目的并行开发,让系统的非线性特征更加剧烈。
系统集成从来不只是一个技术问题,更是一个架构治理问题、系统规划问题。当多个团队各自独立开发,技术栈各异、接口标准不一,集成时刻便成为灾难的导火索Gartner 报告显示超过60% 的数据中台项目未能达到预期,其中大多数失败的原因可追溯至基础集成环节的缺失。企业投入数百万建设数据中台,希望整合分散在ERP、CRM、电商平台的数十个数据源,结果却因为数据标准混乱、接口不统一,项目停滞不前,反而加剧了部门间的数据矛盾。
微服务架构下的集成故障同样触目惊心。一家金融科技平台的支付结算系统,在一次季度末消费高峰中突发“超时连锁反应”:支付渠道服务因配置加载异常率先超时,10 分钟内故障迅速蔓延至交易鉴权、用户账户等上游服务,响应延迟从 300ms 飙升至 3s,交易成功率暴跌至 88%。故障根源在于渠道路由模块配置加载的并发冲突,以及线程池与超时参数的失配,更有甚者—— 各服务间未设置隔离边界,一个模块的故障像多米诺骨牌一样推倒整条链路
这不是单一团队的代码质量问题,这是系统集成层面的结构性失效
当约束条件从单一团队的沟通成本,扩展到多产品线的技术栈异构、接口标准碎片化、部署节奏不一致时,这个非线性规划问题的变量数量已经爆炸逐点优化的结果,必然是局部最优而全局次优甚至全局失效。
重复开发:吞噬效率的黑洞,大型组织中还有一个更隐蔽的浪费不同团队在不同项目中,重复实现着相同的功能和需求。
有一个数字让人深思:某省级政务云平台采用传统开发模式,导致43 个业务系统重复建设,年运维成本超 2.3 亿元。系统孤岛率高达68%,重复代码占比 41%,漏洞修复周期长达 37 天。[12]这不是某一个项目的问题,而是整个IT 治理模式的系统性失效。在很多大型企业里,这种现象以更隐蔽的方式存在项目越接越多,团队越来越忙,但利润率和产品能力并没有同步增长。大量基础功能,甚至更大的浪费占比于业务功能,在不同项目中反复开发。最贵的架构师和高级开发者,时间被重复的CRUD、用户交互调整和系统性能问题优化和紧急攻关占据
另一个典型场景:某业务团队因为历史架构原因,业务层代码缺乏抽象,代码无法实现复用。需求开发代码量大,经常出现数十人日的大需求,开发中又写出大量重复代码,导致服务代码库快速膨胀到百万行,应用启动耗时过长,形成恶性循环。这样的后果带来了一个更隐蔽的问题同样的需求,不同团队实现出来完全不同。一个权限校验逻辑,在几十个地方被重复实现,每个实现都有细微的差异—— 有的硬编码ID,有的缺失多因子认证,有的逻辑已过时这些隐患,正是系统集成的“定时炸弹”
重复开发不是某个开发者的懒惰,而是组织架构的镜像。当团队之间缺乏共享机制,当“自己写一个” 比 “找到已有的” 更快,重复就是必然。

突破的路径:多维度系统设计

面对这些根深蒂固的工程困境—— 这些本质上是非线性规划问题的病态表现 —— 各行各业的先行者已经验证了突破的路径。解法不是寻找单一的最优参数,而是从多个维度进行系统性设计
Nx 构建系统支撑:这家审计软件巨头通过统一Monorepo管理700 多个项目,实现 93% 的缓存命中率,每周节省 181 天计算时间,成功整合了 10 年以上的遗留代码和多种技术栈。[13]
UKG统一代码库:人力资本管理巨头UKG 成功解决了跨平台代码重复问题,建立了高效的代码共享机制。构建时间从半天到一天压缩到几分钟,团队不再重写已有功能,而是复用经过验证的组件。[14]
Snowflake 内部复用:通过Monorepo 内部统一复用组件的方式,支撑了70 多个团队、超过 500 个 Streamlit 应用,这些应用贡献了整个公司Streamlit 一半以上的使用量,充分验证了 “一次建设、全员复用” 的平台化价值。[15]
Gitee 的CBB 构件管理:通过将多个团队重复开发的协议解析模块整合为统一构件,复用覆盖8 个子系统,整体开发成本降低 60%,集成周期从 3 周压缩至 2 天。[16]
中交集团“蓝舟” 平台单一场景应用的开发效率较传统模式提升30%,叠加共性业务模块化服务及技术组件的复用,多场景应用总体开发效率可提升70%。[17]
某金融科技平台韧性重构:通过重构配置加载逻辑、构建参数动态匹配模型、搭建三维监控体系,将系统交易成功率从88% 提升并稳定在 99.9% 以上
这些案例共同指向一个结论解决大规模软件交付困境的钥匙,不在更努力地加班,不在简单地加人,而在从多个维度系统性地重构约束条件—— 这正是运筹学思维的核心:不是沿着旧约束求解,而是重新设计问题本身的变量和边界

从系统论到全局最优

Brooks提出了一个与运筹学精神完全相通的原则——概念完整性。“我主张,在系统设计中,概念完整性是最重要的考虑因素,为了反映连贯的思路,宁可舍去不规则的特性和改进,哪怕它是更好的。功能与概念的复杂程度的比值才是系统设计的最终测试标准,单是功能多或者系统简洁都无法成为一个好的设计。”[11]这也正是系统论思想在软件工程中的核心映射。在架构设计实践中,有一个容易被忽视的原则:每一层的设计决策,都会向上传导,最终在用户价值层面兑现或惩罚
一个分布式架构设计产品服务的响应延迟,表面看是网络或数据库的问题。但也可能是操作系统、内存管理的问题;如果不懂嵌入式的功耗约束和模拟与数字信号,也不能理解为什么边缘设备要限频运行,嵌入式通信数据干扰被改下的现象无从下手。传统解法是“各层优化各层的”,结果往往是一层的优化制造了另一层的瓶颈—— 局部最优,全局更差。另一条路是:让技术决策视野穿透整个栈。从互联网后端到单机软件,从操作系统内核到驱动层,从硬件固件到嵌入式,从电路设计到机械散热—— 当这些层面被整体纳入视野后,架构设计的目标就从“某层性能最优” 变成了 “整体系统最优”
这和精益的“全局流动” 理念一致精益反对单工序盲目提速,追求的是端到端的价值流速。[4]技术栈的穿透不是为了深度而深度,而是为了确保每一层的设计都服务于系统整体,而不是局部内卷。局部最优之和,往往远小于全局最优。这就是《人月神话》用半个世纪告诉我们的真相——软件的复杂性不在于代码本身,而在于代码之间的连接。而这,正是一个非线性的系统优化问题:目标函数是端到端的价值流速,约束条件是人、技术、架构、组织的互动关系,求解需要多维度的系统设计而非单变量的直线加速

三、CI/CD 哲学:代码的 “单件流” 和 “安灯系统”

效率提升的另一个关键维度,是CI/CD 的流动哲学。

很多人把CI/CD 理解为一堆工具:Jenkins、GitLab CI、Docker、Kubernetes。但工具只是载体,真正的内核是一套哲学。[8]精益有一条铁律:大批量流动等于隐藏问题,单件流才能暴露瓶颈。软件发布也是如此。传统的按月发布模式,代码堆积一个月,集成时冲突遍地,bug 堆成山,修复一周,测试两周,最后全员熬通宵上线 —— 这就是软件世界的 “批量生产”。
CI/CD 哲学的本质是:把发布变成日常心跳。每一次代码提交,自动构建、自动测试、自动部署。批量大小锁定为1。[8]在前面提到的全平台架构统一过程中,CI/CD 和平台化开发架构是同步搭建的。当代码可以在多个产品线之间无缝复用时,如果没有自动化的构建、测试和部署流水线,复用本身会变成另一种灾难——一个基础组件的修改,需要人工在所有依赖它的产品线中逐一验证。CI/CD 把这种 “复用的代价” 降到了最低。

精益原则

CI/CD 对应

单件流

每次提交独立构建和验证,不积压

自働化(安灯)

流水线变红,整个团队停下修复

消除等待浪费

环境自动创建、测试自动运行、部署自动执行

拉动式生产

功能分支基于主干持续集成,按需发布

德国金融软件巨头DATEV的案例是经典印证。这家拥有800 多名开发人员、维护 200 多个紧密耦合产品的企业,曾困在发布泥潭里:构建一次完整产品需要8 到 9 小时,只能在夜间进行,发布周期锁死在一年两次。更痛苦的是,大型构建经常在半夜失败,第二天早上团队才发现。[9]
他们用集中式编译计算资源池替代各自为战的构建环境,将大型持续集成构建从每晚一次变为每天两到三次。结果:CI/CD 构建时间缩短约 60%,发布周期从每年 2 次跃升为每月 1 次。捷豹路虎的软件工厂更极致。4000 多名开发人员、200 万条 CI/CD 管道,某些应用管道的构建时间长达一整天。引入Karpenter 自动扩缩容后,管道构建从1 天压缩到 1 小时 15 分钟 —— 缩减了 95%。[10]工程师原话:“现在,几乎没有我们跑不了的代码量,也没有我们支持不了的开发人员数量。”
CI/CD 构建时间从 9 小时降到 5 小时,不是因为机器快了,而是 “等一夜才知道结果” 的隐性浪费被打掉了发布频率从一年两次变成每月一次,不是因为写代码更快了,而是等得起的耐心被自动化吞噬了。CI/CD 在运筹学的意义上,是将“等待”这个约束条件的权重降到了最低—— 队列理论的核心理念在软件交付中的直接应用。

四、重构、规范、防御式设计与平台化复用

效率提升的第四个维度,是代码质量的持续改善和平台化复用的杠杆效应。
Martin Fowler在《重构》中的定义极简:在不改变软件外部行为的前提下,用一系列微小、有序的步骤改善内部结构。[7]实践中可以确立一条硬性规范:每次提交代码,必须比拉取时更干净。这跟丰田的“持续改善” 如出一辙 —— 每一次触碰,都是改善的机会。
重构的核心前提是自动化测试。没有测试,重构就是蒙眼拆炸弹。在精益的语境下,自动化测试就是代码的“安灯系统”。任何改动触发测试变红,流水线立刻提示失败,问题当场解决,绝不积累。
防御式设计则是另一道锁。在接口入口、状态变更处设置断言和前置条件校验。这跟安灯绳有异曲同工之妙—— 不是所有异常都需要程序员肉眼识别,自动检查应该无处不在。Fail Fast,是最强的安灯绳。
但这些还只是“把事情做对” 的层面。要真正撬动效率的杠杆,还需要平台化复用—— 这正是前面讨论的重复开发问题的根本解法。
一个常见的浪费场景:每个团队都在写自己的认证模块、日志框架、部署脚本、监控面板。这些通用能力就像车间里每个工人自己打自己的扳手—— 重复劳动,且质量参差不齐。
平台化要做的就是把这些通用能力抽离出来,变成整个组织共享的基础设施。一次打磨,全员复用。

精益原则

代码质量与复用实践

持续改善

每次签入比拉取时更干净

内建质量

自动化测试是代码的安灯系统

Fail Fast

防御式设计/ 断言,错误第一时间暴露

标准作业

编码规范、分支策略、评审流程固化

消除重复浪费

平台化复用,通用能力一次建设全员共享

重构是磨快刀CI/CD 是修高速平台化复用是建兵工厂。刀快、路好、装备精良,单个战士的战斗力才不会被环境消耗殆尽。这三者共同解决的是非线性规划问题中“个体能力损耗” 这个约束 —— 不让环境因素吃掉本可以创造价值的能量

五、业务- 技术 - 组织的三层映射与全价值链交付

效率提升的第五个维度,是组织结构的设计和交付闭环的范围。一套经过验证的方法论是三层映射:业务域→ 技术域 → 组织域
首先梳理业务的领域边界。这一步很像价值流图—— 把从客户需求到价值交付的全过程画出来,找到自然的分界点。
然后,将业务领域映射为技术架构。每个业务域对应一组独立的服务、数据、接口,域之间用明确的契约隔离。这里有一个铁律:组织间的依赖关系,不应比架构间的依赖关系更复杂。这是康威定律的逆向应用—— 用架构约束组织沟通成本。
最后,将技术边界映射为团队边界。每个团队对一个独立的业务- 技术域负责,拥有该域内的全部决策权。团队的内部协作密集,跨团队的协作稀疏而标准化。这种模块化分工,让等待和推诿在结构层面就被消除了 —— 这正是《人月神话》中 “沟通成本随人数平方增长” 问题的组织解。
分工只是手段,闭环才是目的。传统团队的分工往往割裂了价值链路:需求分析师对接客户,开发对着需求文档,测试对着测试用例,运维对着上线工单。每个环节都只对自己的产出负责,没有人对“从需求到交付” 的整条链路负责。这种割裂,正是精益最深恶痛绝的 “交接浪费”。模块化分工的正确打开方式是:每个团队负责的不是一个技术层,而是一条完整的价值交付链路。从需求澄清到软件交付,从方案设计到版本发布,端到端闭环。团队内部的协作密集,跨团队的协作稀疏而标准化

精益原则

组织与交付实践

消除等待浪费

模块化分工,职责内闭环,减少跨组协调

全局流动

全价值链参与,从需求到交付一条链路贯穿

拉动式生产

基于交付目标倒推任务,而非基于职能分配任务

消除交接浪费

团队负责完整交付,而非只负责某个环节

好的架构不是技术选型的胜利,是映射关系的胜利。好的团队不是人多势众的胜利,是闭环交付的胜利。从运筹学的视角看,三层映射的本质是重新定义决策变量——不是如何调度一个混乱的系统,而是如何设计一个结构使调度本身变得自然

六、AI Coding 时代的精益洞察:速度越快的工具,越需要防错机制

2024 年开始,AI 编程工具席卷软件行业。代码生成速度提升了数倍,但一个尖锐的问题随之浮出水面:生成快,验证慢,垃圾代码的产出速度前所未有,工程化协同难以落地
这是精益思想的洞察再放光明的时刻。精益最警惕的就是“局部提速”。一个工序拼命产出,下道工序消化不了,结果就是 ——在制品堆积AI 编程工具恰恰制造了一个巨大诱惑:让 “写代码” 这一步骤然加速。但如果测试跟不上、Code Review 跟不上、集成验证跟不上,结果不是效率提升,而是技术债务的海啸。[6]
更深层的风险是,AI 生成代码的 “不可见性” 比传统开发更甚。Brooks 当年指出,软件开发的困难在于逻辑不可见——AI 把这种不可见推向了极致。开发者看不到AI 的 “思考过程”,只能看到输出结果。当一段代码由 AI 生成、开发者修改、没人真正理解其完整逻辑时,《人月神话》中描绘的概念完整性衰退和集成灾难,将以更剧烈的方式重演
精益的自働化原则要求“发现问题立即停止”——但如果问题来源都不可追溯,停止的意义何在?

解法不在抵制AI,而在建立与之匹配的防错体系。

第一条防线:契约式接口。AI 可以自由生成内部实现,但接口必须严格定义,编译期和运行期双重校验。精益的 “标准作业”,在 AI 时代变为 “标准契约”。
第二条防线:AI 的安灯系统。自动代码审查、自动安全扫描、自动架构合规检查必须和生成速度同步。生成变快了,检查点就要相应前置和加密。捷豹路虎管道缩减95% 构建时间,靠的就是检查节点密布而不堆积。[10]
第三条防线:人机交接的检验。精益中不准将缺陷流入下道工序。AI 时代,每次 AI 向人交接的代码,都必须有明确的检验清单。这相当于在人与 AI 的交接边界,主动系上安全绳。

精益原则

AI Coding 应用

全局流动优于局部提速

生成速度必须与验证速度匹配,否则产出的是库存而非价值

内建质量

AI 生成代码的校验流程必须密布于产出路径上

安灯绳/ Fail Fast

自动架构检查、安全扫描快速失败,第一时间拦截

标准作业

接口契约先行,规范既是AI 的护栏也是人的沟通语言

暴露问题

AI 负责的不应是答案,而是让决策的约束条件清晰可见

AI 时代的效率公式不是代码行数 / 时间,而是(正确代码- 技术债务)/ 时间。前者看生成速度,后者看防错体系。AI 把 “生成” 这个局部变量提速了,但整个非线性规划问题的目标函数 —— 端到端价值流速 —— 取决于所有约束条件的同步优化。如果防错跟不上生成,局部加速反而让全局解更差。五倍效率提升的背后,正是防御式设计、CI/CD、平台化复用、模块化分工和全价值链闭环这五个维度相互咬合的系统效应。

七、Harness 解题之光:让交付流水线本身成为防错系统

如果说CI/CD 理念定义了 “应该做什么”,那 Harness 这类现代化交付平台展示了 “可以做到什么程度”。传统CI/CD 的痛点在于:管道脚本本身就是技术债务的来源。每个团队维护自己的Jenkinsfile,成百上千个脚本散落各处,版本漂移、配置漂移、隐性依赖。故障发生时,排查管道配置比排查代码 bug 更痛苦—— 这恰恰是前面提到的 “重复开发” 问题在交付基础设施层面的复现。
Harness 的核心思路是:将交付流水线本身产品化。它用模板化策略将部署流程标准化—— 环境定义、部署策略、回滚机制、健康检查,全部封装为可复用组件。团队不再手写管道脚本,而是声明 “要什么部署策略”,背后的执行自动化完成。这种思路的精益内核极为深刻:手动维护交付管道本身就是流转中的浪费。这恰恰是平台化复用在交付基础设施上的延伸—— 通用能力抽离出来,全员复用,一次打磨,长期受益。
Harness 内置了AI 驱动的部署守护:部署过程中自动检测日志异常、性能波动,一旦超出基线自动回滚。这本质上是把安灯绳嵌入了部署流水线的每个环节——人工观察换成了自动感知,人工判断换成了基线对比,人工回滚换成了策略触发

精益理念

Harness 实践

标准化作业

部署模板化,消除脚本碎片

安灯系统

自动部署守护,异常自动回滚

消除浪费

管道维护从手工劳动变为声明式配置

持续改善

每次回滚自动沉淀为下一次的检查基线

Harness 的意义在于:让交付本身成为可观测、可防错、可复用的系统,交付能力不再依附于个体英雄。这在运筹学的语境下,是把“交付基础设施” 这个曾经是瓶颈的约束条件,转化为一个可以动态自适应优化的柔性边界

结语

不管是精益还是软件工程,最后赢的都是流动速度。而流动速度的敌人从来不是某个环节的慢,而是环节与环节之间的等待、交接和返工。消除这些,比加速任何一个单点都有效得多。从数学上看,这就是在非线性的约束网络中,重新设计变量和边界,而不是在旧约束里进行已经逼近极限的局部搜索
精益思想的暴露问题、放大问题、解决问题,到《人月神话》对软件复杂性本质的揭示,再到大规模系统集成和重复开发的困境—— 这些看似分散的议题背后有一条共同的逻辑如何在复杂系统中消除浪费、压缩等待、放大异常、持续改善
而这条逻辑的数学内核,是运筹学的非线性规划。大型软件交付是一个典型的非线性规划问题:目标函数是端到端的价值流速,约束条件是人、技术、架构、组织的互动网络,求解需要的不是单变量的直线加速,而是多维度的系统设计。

精益给了物理世界一个操作范式,Brooks 给了软件世界一个警世寓言,运筹学给了我们理解复杂性的数学语言。CI/CD 是流动的工具,重构是质量的修行,防御式设计是问题的放大器,平台化复用是效率的杠杆,业务 - 技术 - 组织的映射是结构的胜利,全价值链闭环是交付的终极形态。

从客户的心愿到客户的收据,从一段代码到一个产品,中间这条“流动的河”,是否快得没有一滴静水。谁的流速快,谁就能先探到水温,先捕到鱼。

面对AI Coding 时代的冲击,这条河更湍急了 —— 但规律依旧清晰。速度越快的工具,越需要防错。混乱的时代,正需要系统论者——需要那些能在多变量、多约束的非线性网络中,找到全局最优路径的人

附录:案例引用来源

引用1,丰田生产系统(TPS)大野耐一,《丰田生产方式》,1978 年(原版:ダイヤモンド社)。中文版:中信出版社,2024 年,ISBN 9787521764192
引用2,大野耐一抽走工序库存,暴露设备故障与换模问题大野耐一,《大野耐一的现场管理》,1982 年;中文珍藏版:机械工业出版社,ISBN 9787111320364
引用3,丰田安灯绳(Andon Cord)与停线文化Jeffrey K. Liker,《The Toyota Way》(丰田之道),McGraw-Hill,2004 年。丰田国内外多家工厂公开资料均有安灯绳停线制度说明
引用4,价值流图(VSM)方法论Mike Rother & John Shook,《Learning to See》(学习观察),Lean Enterprise Institute,1999 年。中文版:机械工业出版社,2013 年
引用6,牛鞭效应(Bullwhip Effect)最早由Jay W. Forrester 于《Industrial Dynamics》(MIT Press,1961 年)中提出;Hau L. Lee 等人于《Management Science》(1997 年)发表的论文系统分析了四种成因
引用7,《重构:改善既有代码的既有设计》,Martin Fowler,《Refactoring: Improving the Design of Existing Code》,Addison-Wesley,1999 年
引用8,CI/CD 与持续交付原则,Jez Humble & David Farley,《Continuous Delivery》,Addison-Wesley,2010 年
引用9,DATEV 通过 CI/CD 将发布周期从每年 2 次压缩至每月 1 次,构建时间缩短 60%Incredibuild 官网案例。https://www.incredibuild.com/case-studies/datev
引用10,捷豹路虎JLR 软件工厂:管道构建从 1 天缩减至 1 小时 15 分钟(缩减 95%),管道规模从 50 万扩展至 200 万AWS 官网案例。https://aws.amazon.com/cn/solutions/case-studies/jlr-case-study/
引用11,《人月神话》:焦油坑、人月不可互换、沟通成本N (N−1)/2、概念完整性Frederick P. Brooks Jr.,《The Mythical Man-Month》,Addison-Wesley,1975 年(周年纪念版 1995 年)
引用12,多系统重复建设、孤岛率68%、重复代码 41% 等行业工程数据综合行业公开数据及多篇IT 治理研究报告
引用13,Caseware 通过 Nx 管理 700 + 项目,93% 缓存命中率,每周节省 181 天计算时间Nx 官方博客,2026 年 3 月 24 日。https://nx.dev/blog/caseware-case-study
引用14,UKG 统一代码库:构建时间从半天到一天压缩到几分钟Nx 官方博客,2026 年 1 月 15 日。https://nx.dev/blog/ukg-case-study
引用15,Snowflake 内部复用:70 + 团队、500+ Streamlit 应用Snowflake 官方博客,2025 年 8 月 21 日。https://www.snowflake.com/blog/how-we-built-internal-library-streamlit-apps/
引用16,Gitee 的 CBB 构件管理:复用覆盖 8 个子系统,开发成本降低 60%,集成周期从 3 周压缩至 2 天Gitee 官方博客,2026 年 1 月 23 日。https://blog.gitee.com/cbb-devsecops-military/
引用17,中交集团“蓝舟” 平台:单一场景开发效率提升 30%,多场景总体效率提升 70%,中国交通新闻网报道,2025 年 9 月 13 日。https://www.zgjtb.com/content/2025-09/13/content_123456.html
引用26,Harness 持续交付平台,Harness 官网。https://www.harness.io
基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-05-09 05:55:26 HTTP/1.1 GET : https://www.yeyulingfeng.com/a/588532.html
  2. 运行时间 : 0.102699s [ 吞吐率:9.74req/s ] 内存消耗:4,932.41kb 文件加载:145
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=02f5b39e424983729bb3890d6af69095
  1. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/public/index.php ( 0.79 KB )
  2. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/autoload.php ( 0.17 KB )
  3. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/composer/autoload_real.php ( 2.49 KB )
  4. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/composer/platform_check.php ( 0.90 KB )
  5. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/composer/ClassLoader.php ( 14.03 KB )
  6. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/composer/autoload_static.php ( 6.05 KB )
  7. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/helper.php ( 8.34 KB )
  8. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-validate/src/helper.php ( 2.19 KB )
  9. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/ralouphie/getallheaders/src/getallheaders.php ( 1.60 KB )
  10. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/helper.php ( 1.47 KB )
  11. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/stubs/load_stubs.php ( 0.16 KB )
  12. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Exception.php ( 1.69 KB )
  13. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-container/src/Facade.php ( 2.71 KB )
  14. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/symfony/deprecation-contracts/function.php ( 0.99 KB )
  15. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/symfony/polyfill-mbstring/bootstrap.php ( 8.26 KB )
  16. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/symfony/polyfill-mbstring/bootstrap80.php ( 9.78 KB )
  17. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/symfony/var-dumper/Resources/functions/dump.php ( 1.49 KB )
  18. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-dumper/src/helper.php ( 0.18 KB )
  19. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/symfony/var-dumper/VarDumper.php ( 4.30 KB )
  20. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/guzzlehttp/guzzle/src/functions_include.php ( 0.16 KB )
  21. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/guzzlehttp/guzzle/src/functions.php ( 5.54 KB )
  22. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/App.php ( 15.30 KB )
  23. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-container/src/Container.php ( 15.76 KB )
  24. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/psr/container/src/ContainerInterface.php ( 1.02 KB )
  25. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/provider.php ( 0.19 KB )
  26. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Http.php ( 6.04 KB )
  27. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/helper/Str.php ( 7.29 KB )
  28. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Env.php ( 4.68 KB )
  29. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/common.php ( 0.03 KB )
  30. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/helper.php ( 18.78 KB )
  31. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Config.php ( 5.54 KB )
  32. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/alipay.php ( 3.59 KB )
  33. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/facade/Env.php ( 1.67 KB )
  34. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/app.php ( 0.95 KB )
  35. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/cache.php ( 0.78 KB )
  36. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/console.php ( 0.23 KB )
  37. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/cookie.php ( 0.56 KB )
  38. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/database.php ( 2.48 KB )
  39. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/filesystem.php ( 0.61 KB )
  40. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/lang.php ( 0.91 KB )
  41. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/log.php ( 1.35 KB )
  42. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/middleware.php ( 0.19 KB )
  43. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/route.php ( 1.89 KB )
  44. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/session.php ( 0.57 KB )
  45. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/trace.php ( 0.34 KB )
  46. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/view.php ( 0.82 KB )
  47. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/event.php ( 0.25 KB )
  48. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Event.php ( 7.67 KB )
  49. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/service.php ( 0.13 KB )
  50. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/AppService.php ( 0.26 KB )
  51. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Service.php ( 1.64 KB )
  52. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Lang.php ( 7.35 KB )
  53. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/lang/zh-cn.php ( 13.70 KB )
  54. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/initializer/Error.php ( 3.31 KB )
  55. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/initializer/RegisterService.php ( 1.33 KB )
  56. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/services.php ( 0.14 KB )
  57. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/service/PaginatorService.php ( 1.52 KB )
  58. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/service/ValidateService.php ( 0.99 KB )
  59. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/service/ModelService.php ( 2.04 KB )
  60. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-trace/src/Service.php ( 0.77 KB )
  61. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Middleware.php ( 6.72 KB )
  62. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/initializer/BootService.php ( 0.77 KB )
  63. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/Paginator.php ( 11.86 KB )
  64. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-validate/src/Validate.php ( 63.20 KB )
  65. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/Model.php ( 23.55 KB )
  66. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/Attribute.php ( 21.05 KB )
  67. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/AutoWriteData.php ( 4.21 KB )
  68. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/Conversion.php ( 6.44 KB )
  69. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/DbConnect.php ( 5.16 KB )
  70. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/ModelEvent.php ( 2.33 KB )
  71. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/RelationShip.php ( 28.29 KB )
  72. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/contract/Arrayable.php ( 0.09 KB )
  73. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/contract/Jsonable.php ( 0.13 KB )
  74. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/contract/Modelable.php ( 0.09 KB )
  75. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Db.php ( 2.88 KB )
  76. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/DbManager.php ( 8.52 KB )
  77. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Log.php ( 6.28 KB )
  78. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Manager.php ( 3.92 KB )
  79. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/psr/log/src/LoggerTrait.php ( 2.69 KB )
  80. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/psr/log/src/LoggerInterface.php ( 2.71 KB )
  81. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Cache.php ( 4.92 KB )
  82. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/psr/simple-cache/src/CacheInterface.php ( 4.71 KB )
  83. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/helper/Arr.php ( 16.63 KB )
  84. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/cache/driver/File.php ( 7.84 KB )
  85. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/cache/Driver.php ( 9.03 KB )
  86. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/contract/CacheHandlerInterface.php ( 1.99 KB )
  87. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/Request.php ( 0.09 KB )
  88. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Request.php ( 55.78 KB )
  89. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/middleware.php ( 0.25 KB )
  90. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Pipeline.php ( 2.61 KB )
  91. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-trace/src/TraceDebug.php ( 3.40 KB )
  92. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/middleware/SessionInit.php ( 1.94 KB )
  93. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Session.php ( 1.80 KB )
  94. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/session/driver/File.php ( 6.27 KB )
  95. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/contract/SessionHandlerInterface.php ( 0.87 KB )
  96. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/session/Store.php ( 7.12 KB )
  97. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Route.php ( 23.73 KB )
  98. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/RuleName.php ( 5.75 KB )
  99. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/Domain.php ( 2.53 KB )
  100. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/RuleGroup.php ( 22.43 KB )
  101. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/Rule.php ( 26.95 KB )
  102. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/RuleItem.php ( 9.78 KB )
  103. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/route/app.php ( 3.94 KB )
  104. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/facade/Route.php ( 4.70 KB )
  105. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/dispatch/Controller.php ( 4.74 KB )
  106. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/Dispatch.php ( 10.44 KB )
  107. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/controller/Index.php ( 9.87 KB )
  108. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/BaseController.php ( 2.05 KB )
  109. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/facade/Db.php ( 0.93 KB )
  110. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/connector/Mysql.php ( 5.44 KB )
  111. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/PDOConnection.php ( 52.47 KB )
  112. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/Connection.php ( 8.39 KB )
  113. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/ConnectionInterface.php ( 4.57 KB )
  114. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/builder/Mysql.php ( 16.58 KB )
  115. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/Builder.php ( 24.06 KB )
  116. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/BaseBuilder.php ( 27.50 KB )
  117. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/Query.php ( 15.71 KB )
  118. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/BaseQuery.php ( 45.13 KB )
  119. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/TimeFieldQuery.php ( 7.43 KB )
  120. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/AggregateQuery.php ( 3.26 KB )
  121. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/ModelRelationQuery.php ( 20.07 KB )
  122. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/ParamsBind.php ( 3.66 KB )
  123. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/ResultOperation.php ( 7.01 KB )
  124. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/WhereQuery.php ( 19.37 KB )
  125. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/JoinAndViewQuery.php ( 7.11 KB )
  126. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/TableFieldInfo.php ( 2.63 KB )
  127. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/Transaction.php ( 2.77 KB )
  128. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/log/driver/File.php ( 5.96 KB )
  129. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/contract/LogHandlerInterface.php ( 0.86 KB )
  130. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/log/Channel.php ( 3.89 KB )
  131. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/event/LogRecord.php ( 1.02 KB )
  132. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/Collection.php ( 16.47 KB )
  133. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/facade/View.php ( 1.70 KB )
  134. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/View.php ( 4.39 KB )
  135. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/controller/Es.php ( 3.30 KB )
  136. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Response.php ( 8.81 KB )
  137. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/response/View.php ( 3.29 KB )
  138. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Cookie.php ( 6.06 KB )
  139. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-view/src/Think.php ( 8.38 KB )
  140. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/contract/TemplateHandlerInterface.php ( 1.60 KB )
  141. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-template/src/Template.php ( 46.61 KB )
  142. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-template/src/template/driver/File.php ( 2.41 KB )
  143. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-template/src/template/contract/DriverInterface.php ( 0.86 KB )
  144. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/runtime/temp/c935550e3e8a3a4c27dd94e439343fdf.php ( 31.50 KB )
  145. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-trace/src/Html.php ( 4.42 KB )
  1. CONNECT:[ UseTime:0.000524s ] mysql:host=127.0.0.1;port=3306;dbname=wenku;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.000639s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.000252s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000261s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.000539s ]
  6. SELECT * FROM `set` [ RunTime:0.000208s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.000572s ]
  8. SELECT * FROM `article` WHERE `id` = 588532 LIMIT 1 [ RunTime:0.000607s ]
  9. UPDATE `article` SET `lasttime` = 1778277326 WHERE `id` = 588532 [ RunTime:0.001071s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 64 LIMIT 1 [ RunTime:0.000226s ]
  11. SELECT * FROM `article` WHERE `id` < 588532 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.000454s ]
  12. SELECT * FROM `article` WHERE `id` > 588532 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.003873s ]
  13. SELECT * FROM `article` WHERE `id` < 588532 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.001452s ]
  14. SELECT * FROM `article` WHERE `id` < 588532 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.000830s ]
  15. SELECT * FROM `article` WHERE `id` < 588532 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.000838s ]
0.104360s