乐于分享
好东西不私藏

AI Coding 时代,后端架构要从“可维护”走向“可被 Agent 维护”

AI Coding 时代,后端架构要从“可维护”走向“可被 Agent 维护”
AI Agent 面向后端架构地图工作

过去两年,很多团队对 AI Coding 的理解还停留在“帮我写几行代码”“补一个单测”“解释一下这个函数”。

这当然有价值,但我越来越觉得,这只是第一阶段。

真正的变化不是 AI 会不会写代码,而是:当 AI Agent 开始进入研发流程,甚至能够持续执行需求拆解、代码修改、测试验证、故障定位和变更总结时,我们的后端系统是否准备好了?

很多系统其实没有准备好。

它们对人类老员工是可维护的,对新人是半可维护的,但对 AI 来说,可能是高度不友好的。因为太多关键知识不在代码里,也不在文档里,而在人的脑子里、群聊里、历史事故复盘里、某个资深同学的经验判断里。

这就是后端架构下一阶段要面对的问题:系统不只要 Human Friendly,还要 AI Friendly。

AI Friendly 不是补一份 README

我不认为 AI Friendly 等于“文档写完整一点”。

这太轻了。

真正的 AI Friendly,是让 AI Agent 在有限上下文、有限权限、有限试错成本下,仍然能够理解系统边界、判断风险、修改代码、验证结果,并知道什么时候应该停下来交给人。

换句话说,过去我们建设的是“人类可维护系统”。

接下来要建设的是“智能体可维护系统”。

这件事对后端尤其重要。因为后端系统的复杂度从来不只在代码里。它在服务拓扑里,在数据所有权里,在接口兼容里,在异步消息里,在灰度策略里,在历史包袱里,也在那些“千万不能这么改”的业务不变量里。

AI 如果只能看到一个代码仓库,它就很容易做出局部正确、全局错误的修改。

比如,把应该放在 BFF 层的兼容逻辑塞进核心领域服务;把原本可以异步解耦的链路改成同步 RPC;看到一个表能查,就以为这个服务有权写;看到一个接口还存在,就以为它是推荐使用的新接口。

这些错误不是模型不聪明,而是系统没有把关键事实显式告诉它。

第一件事:把系统事实变成机器可读资产

六类系统事实层,构成 AI 可理解的后端底座

技术组织过去沉淀了大量“经验资产”,但这些资产很多是人读的,不是机器读的。

AI Friendly 的第一步,是把这些经验变成结构化、可检索、可验证的系统事实。

我建议至少从六类事实开始。

第一类是架构事实。

AI 需要知道系统有哪些业务域,哪些服务属于核心链路,哪些是支撑系统,哪些是历史遗留模块,哪些服务可以承载新需求,哪些服务只应该维护不再扩展。

没有这张地图,AI 只能在局部代码里猜。

第二类是服务事实。

每个服务都应该有一张 Service Card,说明它的职责、上游、下游、数据库、缓存、消息、定时任务、外部依赖、负责人、发布方式、降级方式和告警入口。

这不是给新人看的欢迎文档,而是给 Agent 执行任务前装载上下文用的“服务身份证”。

第三类是领域事实。

后端系统最危险的地方,往往不是技术,而是业务不变量。

订单能不能从已取消回到已支付?支付成功后能不能重复扣款?库存扣减和订单确认之间如何补偿?会员权益是否允许跨租户共享?

这些东西如果不显式化,AI 写出来的代码可能语法正确、单测通过,但业务上是错的。

第四类是接口事实。

接口文档不应该只写 URL、参数和返回值。它还应该说明调用方是谁,是否幂等,能否重试,超时时间是多少,错误码如何解释,字段是否有兼容约束,移动端老版本是否还依赖某个行为。

第五类是数据事实。

表结构、字段含义、索引、枚举、唯一约束、分库分表规则、冷热数据策略、敏感字段、归档逻辑,这些都应该让 AI 能查到。

尤其是 status、type、source 这类字段,不写清楚就是在诱导 AI 猜。

第六类是运行事实。

AI 不能只看静态代码。它还要知道这个接口 QPS 多高、TP99 多大、错误率是否异常、是不是核心链路、最近是否发生过事故、哪个 consumer lag 经常上涨、哪个 Redis key 是热点。

静态代码告诉 AI“系统长什么样”。

运行事实告诉 AI“系统现在怎么样”。

第二件事:给 AI 一张真正可用的 Architecture Map

Architecture Map 让 AI 先看全局,再进入局部代码

很多团队都有架构图,但通常是 PPT 里的图。

它可能在新人培训时出现一次,然后就再也没人维护。服务改了、链路变了、消息 topic 换了、数据库拆了,图还停留在两年前。

这对人类已经不太友好,对 AI 更是危险。

AI Friendly 的 Architecture Map 必须进入工程流程。它不是展示材料,而是系统事实的一部分。

它至少要回答几个问题。

哪些服务属于同一个业务域?哪些链路是核心交易链路?哪些调用是强依赖?哪些可以降级?哪些数据只能由某个服务写?哪些消息是领域事件,哪些只是技术同步?哪些服务是战略方向,哪些服务是历史债务?

这张图的价值不是好看,而是约束。

当 AI 要改一个需求时,它应该先知道这个改动落在哪个业务域、涉及哪些服务、是否穿过核心链路、是否改变数据所有权、是否引入新的同步依赖。

没有 Architecture Map,AI 是在迷宫里写代码。

有了 Architecture Map,AI 至少知道自己站在哪里。

第三件事:把团队经验封装成可调用的 Skill

很多资深工程师的价值,不只是会写代码,而是知道“这个地方不能这么改”。

比如,加字段要先兼容写,再兼容读,再回填,再切流量,最后清理旧字段。

比如,支付链路里任何重试都要先确认幂等键。

比如,消息消费失败不能直接吞掉,要区分可重试、不可重试和需要人工介入的异常。

这些经验如果只存在于人脑里,AI 就只能靠通用工程常识去猜。

但通用常识不等于本公司、本系统、本业务的真实约束。

所以,AI Friendly 的组织应该把高频工程经验沉淀成 Skill。

这里的 Skill 不是一句 prompt,而是一组可执行的工作流:什么时候加载哪些上下文,改哪些文件前要检查什么,必须跑哪些测试,哪些指标异常时要停止,最终变更说明必须包含哪些风险。

这一步很关键。

因为它意味着组织知识从“靠人传授”变成“可被 Agent 调用”。

第四件事:给 Agent 修一条受控轨道

受控 Harness 给 Agent 一条安全执行轨道

我对无人值守开发一直保持谨慎乐观。

乐观在于,Agent 的确会承担越来越多重复、繁琐、跨文件的工程任务。

谨慎在于,不能把生产系统直接交给一个“权限很大、上下文不完整、失败成本很高”的执行者。

AI Friendly 不是让 AI 拥有无限权限,而是给它一条受控轨道。

这条轨道可以理解成 Harness。

它负责上下文装载、工具选择、权限控制、命令执行、测试验证、风险判断、人工升级和变更记录。

一个成熟的后端 Harness 至少要有几层。

上下文层:根据任务自动加载相关 Service Card、领域模型、接口契约、数据库 schema、最近变更和事故记录,而不是把整个代码库粗暴塞进去。

工具层:给 Agent 提供代码搜索、依赖分析、日志查询、测试执行、接口探测、配置读取等能力。

权限层:区分只读、可改测试代码、可改业务代码、可触发灰度、可访问生产数据等不同级别。

验证层:每次修改必须经过编译、单测、集成测试、契约测试、回归用例或线上探测。

停止层:当 AI 无法确认数据语义、影响核心链路、权限不足、测试无法闭环时,必须停止并请求人类判断。

我认为,未来技术管理者真正要建设的,不是“让大家都用某个 AI 编程工具”。

而是建设一套让 AI 安全工作的工程基础设施。

第五件事:测试体系要从守门员变成红绿灯

测试门禁从守门员变成 AI 的红绿灯

很多团队过去对测试的态度是:重要,但可以以后补。

在 AI Coding 时代,这个态度会变得非常危险。

因为 AI 的开发速度越快,验证体系就越重要。没有测试门禁,AI 只是把不确定性更快地推向系统。

测试不再只是防止人类手滑,它会成为 AI 的行为约束。

单元测试告诉 AI 函数级行为有没有被破坏。

集成测试告诉 AI 服务协作有没有被破坏。

契约测试告诉 AI 接口兼容有没有被破坏。

回归测试告诉 AI 老业务流程有没有被破坏。

线上探测告诉 AI 真实环境是否符合预期。

对技术管理者来说,这里有一个很现实的判断:如果一个系统没有足够的自动化验证,它就不适合做深度 AI Coding。

最多适合让 AI 写辅助代码,不能让它参与关键链路改造。

测试覆盖率本身不是目标。

真正的目标是让系统有能力回答一句话:这个变更安全吗?

第六件事:可观测性要成为 AI 的眼睛

人类排障时会看日志、指标、链路追踪、告警、发布记录和用户反馈。

AI 也需要这些。

如果一个 Agent 只能读代码,不能看运行态,它就不可能完成真正的故障定位和自愈。

后端系统要 AI Friendly,可观测性就不能只是给 SRE 和研发同学看的大盘。它还要能被 AI 检索、理解和引用。

比如,一个接口最近 24 小时错误率是否上升?某次发布后 TP99 是否变差?某个异常日志是否集中在一个租户?某个消息堆积是否和下游限流有关?某个数据库慢查询是否和新索引缺失有关?

这些问题如果能被工具化回答,AI 才能从“写代码助手”进化为“工程协作者”。

否则它只能在黑暗里修改系统。

这也是为什么我不赞成把 AI Coding 单独看成 IDE 能力。

它最终一定会进入研发平台、发布平台、监控平台、日志平台和故障管理平台。

第七件事:权限治理不能事后再补

权限分级与审计,是 AI Friendly 的安全边界

AI Friendly 不能以牺牲安全为代价。

尤其是后端系统,里面有真实用户数据、交易数据、权限数据、财务数据和生产配置。

如果让 AI Agent 进入工程流程,权限分级必须前置设计。

哪些仓库可以读?哪些文件可以改?哪些环境可以执行命令?哪些日志需要脱敏?哪些数据只能看聚合结果?哪些操作必须人工审批?哪些变更必须留下完整审计?

这些都不能靠“大家自觉”。

未来的 Agent 不是一个工具按钮,而是一个新的工程执行主体。

既然是执行主体,就必须有身份、权限、审计和责任边界。

我的建议是,早期可以从低风险任务开始:文档更新、测试补齐、非核心服务的小改动、日志增强、告警规则建议、代码解释和影响面分析。

等上下文、测试、权限、审计都成熟后,再逐步进入更深的自动化改造。

给技术管理者的三阶段路线

从 Copilot 到 Coworker,再到 Operator 的组织成熟路线

如果一个团队现在想做后端架构 AI Friendly,我不建议一上来搞宏大的平台。

更现实的路线,是分三阶段推进。

第一阶段是 Copilot。

这个阶段,AI 主要帮助人类写代码、解释代码、补测试、生成文档。团队要做的是统一代码规范、补齐基础 README、整理服务入口、明确测试命令。

目标不是自动化,而是先让 AI 在局部任务上有效。

第二阶段是 Coworker。

这个阶段,AI 可以参与需求拆解、影响面分析、跨文件修改、测试生成、变更说明和风险提示。

团队要开始建设 Architecture Map、Service Card、领域不变量文档、接口契约和测试门禁。

目标是让 AI 不只会写代码,还能理解任务上下文。

第三阶段是 Operator。

这个阶段,AI 可以在受控 Harness 中执行更完整的工程流程,包括自动定位问题、生成修复方案、提交变更、跑测试、解释风险,甚至在低风险场景中触发灰度和回滚建议。

但这不是“放手让 AI 干活”。

恰恰相反,它要求组织有更强的工程治理能力:权限分级、审计记录、自动化验证、可观测反馈、人工审批和事故止损机制。

AI 越自主,系统越要可治理。

这是技术管理者必须想清楚的一点。

最后:AI Friendly 改变的是组织沉淀知识的方式

我认为,后端架构 AI Friendly 最终不是一个技术概念,而是一个组织能力概念。

过去,一个强团队依赖资深工程师的经验、默契和长期积累。

未来,一个强团队要把这些经验变成结构化资产,让 AI 可以读取、调用、执行和验证。

过去,文档主要是给新人看的。

未来,文档也是给 Agent 装载上下文用的。

过去,测试是研发流程的最后一道门。

未来,测试会成为 AI 执行任务时持续参考的红绿灯。

过去,架构治理依赖评审会议。

未来,一部分治理规则会直接进入工具、CI、权限和自动化流程。

这不是说人不重要了。

恰恰相反,人会更重要。只是人的价值会从“亲手做每一个改动”,转向“定义系统边界、沉淀组织经验、设计验证机制、控制风险半径”。

AI Coding 时代,后端架构真正的分水岭,不是谁用了更强的模型。

而是谁先把系统建设成 AI 看得懂、改得动、验得住、管得住。

这件事,越早开始,复利越大。

基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-06-21 15:32:06 HTTP/1.1 GET : https://www.yeyulingfeng.com/a/777298.html
  2. 运行时间 : 0.208239s [ 吞吐率:4.80req/s ] 内存消耗:4,716.97kb 文件加载:145
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=975452493c36ebb69b79e931b9b375d3
  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.000965s ] mysql:host=127.0.0.1;port=3306;dbname=wenku;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.001421s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.000649s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000635s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.001347s ]
  6. SELECT * FROM `set` [ RunTime:0.000531s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.001534s ]
  8. SELECT * FROM `article` WHERE `id` = 777298 LIMIT 1 [ RunTime:0.001243s ]
  9. UPDATE `article` SET `lasttime` = 1782027126 WHERE `id` = 777298 [ RunTime:0.003355s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 64 LIMIT 1 [ RunTime:0.000590s ]
  11. SELECT * FROM `article` WHERE `id` < 777298 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.001205s ]
  12. SELECT * FROM `article` WHERE `id` > 777298 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.002326s ]
  13. SELECT * FROM `article` WHERE `id` < 777298 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.005347s ]
  14. SELECT * FROM `article` WHERE `id` < 777298 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.004495s ]
  15. SELECT * FROM `article` WHERE `id` < 777298 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.008860s ]
0.212127s