乐于分享
好东西不私藏

软件工程 50 年未真正工程化,AI 时代的 3 个新范式

软件工程 50 年未真正工程化,AI 时代的 3 个新范式

软件工程 50 年,其实一直是"高级手工作坊"

1968 年 NATO 会议提出"软件工程"这个词的时候,目的是为了解决"软件危机"——项目延期、超预算、bug 丛生。50 多年过去,敏捷、Scrum、DevOps、CI/CD 一套套方法论轮番上场,真正发生"工程化"了吗?

答案是:没有。 这话乍听反直觉,但换一个参照系就清楚了。真正的工程是什么?看机械、化工、电力——它们都做了一件关键的事:用能源替代低阶智能。1788 年瓦特给蒸汽机装上离心调速器,化工厂的恒温器靠 PID 自动跑,人从生产主回路里退出来,只做更高阶的设计与维护。

软件工程没做过这件事。需求从用户到产品经理、到开发、到测试,每一环都在失真;代码要靠人一行行用脑子想出来;同一个功能,张三和李四写出来就是不一样。软件危机的本质,是"认知主体始终是人脑"。 只要靠人脑堆,不确定性就永远在。

但这 50 年也不是白干的。一整套自动化验证基础设施被搭了起来——编译器、类型系统、单元测试、CI/CD、监控告警。这套东西没能让软件工程"工程化",却给下一个时代备好了最坚硬的地基。

范式一:从"堆人脑"到"烧算力"的认知引擎

大模型来了。它的工程史地位被严重低估了。它不是"高级助手",而是工程史上的第一个认知引擎

  • • 经典工程:能源 → 低阶智能(机械控制)
  • • 大模型:能源(算力) → 高阶智能(理解、推理、生成)

这是历史上第一次,"认知"这件事被能源化了。蒸汽机让"做功"能源化,开启了工业革命;大模型让"高阶认知"能源化,开启的将是"认知工业革命"。

这意味着,软件工程真正成为"工程"的时刻,现在才刚到来。 但也别高兴太早——把"人的不确定性"换成了"模型的不确定性":幻觉、漂移、不可解释。新范式的核心命题变成了:如何设计一个能自主纠偏的 AI 系统,并让人专门处理系统自己纠不回来的偏差。

下面是一个最小可跑的"认知引擎"调用示例,用 OpenAI 兼容接口展示大模型把自然语言需求直接转成可执行代码的过程:

# 需求:统计昨日订单总额超过 1000 的客户数
from
 openai import OpenAI
client = OpenAI()

resp = client.chat.completions.create(
    model="gpt-4.1",
    messages=[
        {"role": "system", "content": "你是数据工程助手,只返回 SQL。"},
        {"role": "user",
         "content"
: "统计昨日订单总额超过 1000 的客户数,表 orders(id, user_id, amount, created_at)"},
    ],
    temperature=0,
)
print
(resp.choices[0].message.content)
# 输出:SELECT COUNT(DISTINCT user_id) FROM orders

#       WHERE created_at >= CURRENT_DATE - INTERVAL '1 day'

#       AND created_at <  CURRENT_DATE

#       GROUP BY user_id HAVING SUM(amount) > 1000;

看似平常的一段调用,实际上就是"烧算力换高阶智能"的最小单元。 单次成本 0.01 美元左右,跑完就能拿到一段过去需要 5 年 SQL 经验才能写对的查询。

范式二:AI 中心闭环 + 确定性裁判

当前业界主流——"人为中心,AI 辅助"(Copilot 模式)——是数字化时代的"马车配好鞍"。它不消除不确定性,而是在循环里放大它:AI 用人的代码训练,学会的是人的模式(包含错误);人再用人的标准去 review AI 输出。结果就是:很多团队用了 Copilot,代码量上去了,bug 率和 review 工作量并没降下来。

更隐蔽的代价是:你接受或拒绝 AI 的建议,这个"为什么"没有结构化地沉淀到本地。所有的反馈和数据,最终都在帮 OpenAI、Anthropic 训练下一代模型。不知不觉间,一线开发者成了 AI 厂商的免费数据标注员。

历史总是惊人地相似。20 世纪初电气化时,第一波工厂只是用电动机直接替换蒸汽机,传动系统和车间布局都没变,效率提升不到 30%。福特做的是为每台机器单独配电动机,并按"电力驱动"的逻辑彻底重设计流水线——效率提升数倍。第一波工厂全被淘汰。

正确的终局是AI 为中心,人工辅助。AI 是流程的主体,在从需求到设计、编码、测试、部署的链路里自动流转;人退到两端,前端定义价值,末端守卫边界。

它能成立的关键,在于"确定性裁判"。大模型本身是概率性的,无法自证清白。让它工程级可靠的唯一办法,是用外部确定性系统对其输出进行暴力审判:

  • • AI 生成的代码 → 必须通过编译器 + 单元测试
  • • AI 设计的接口 → 必须符合 Protobuf / OpenAPI 契约
  • • AI 发布的变更 → 必须通过灰度监控指标

下面是一段最简的"裁判"伪代码,展示 AI 输出如何被自动化关卡拦截:

def judge(ai_output: CodePatch, ctx: BuildContext) -> Verdict:
    # 1. 静态分析

    if
 not type_check(ai_output):
        return
 Verdict.REJECT, "type error"

    # 2. 单元测试必须全绿

    test_report = run_pytest(ctx.test_dir)
    if
 test_report.fail > 0 or test_report.cover_delta < 0:
        return
 Verdict.REJECT, f"tests failed: {test_report.fail}"

    # 3. 性能回归不能超过 5%

    bench = run_benchmark(ctx.bench_dir)
    if
 bench.regression_pct > 5:
        return
 Verdict.REJECT, "perf regression > 5%"

    return
 Verdict.ACCEPT, ai_output

过去 50 年软件工程留下的"废墟"——CI/CD、单测、类型系统——恰恰成了新范式最坚硬的地基。 失败的工程化尝试,反而为真正的工程化备好了钥匙。

范式三:Agentic Engineering,确定性前提正在崩塌

2026 年被 LangChain 创始人 Harrison Chase 称为"Agent 工程分水岭"。这一年里,软件工程的确定性前提正在崩塌——决定行为的,不再只是代码,还有模型本身。

过去几十年,软件工程有一个稳定不变的前提:系统的行为写在代码里。工程师读代码,就能推断系统在大多数场景下会怎么运行;测试、调试、上线,都围绕"确定性"展开。这个前提如此基础,以至于没人质疑——就像没人质疑重力存在一样。

Agent 出现后,前提被打破了。在 Agent 应用里,行为由代码 + 模型共同决定,而模型是个在代码之外运行、带着非确定性的黑箱。只靠读代码,已经无法真正理解一个系统;只能让它跑起来,看它在真实输入下做了什么,才知道系统到底在干什么。

这是 Agentic Engineering 的核心命题。它的实践要点有三:

第一,按"业务价值"切分,而非按技术栈。 单元不能按"前端/后端/算法"切,而要按端到端的业务价值切——"用户登录模块""支付下单模块""退款仲裁模块"各自是一个可自治的闭环。一个支付 Agent 跑在独立的沙箱里,具备读订单、调支付通道、写账的完整能力,而不是拆成"读订单 Agent + 调支付 Agent + 写账 Agent"三段互相串。

第二,评估优先于实现。 没有可量化的成功标准,就不要让 Agent 开工。每个 Agent 闭环必须先定义三件事——任务输入空间(覆盖典型业务流 90% 以上的输入形态)、成功判据(可被程序化判定,例如 JSON Schema 校验通过率 ≥ 99%)、失败模式分类(超时 / 幻觉 / 工具调用错误 / 边界输入,每类有对应回退路径)。

第三,反馈必须是结构化的、闭环的、可审计的。 用户每接受或拒绝一次 Agent 输出,这个判断必须以事件的形式沉淀进本地知识库(例如 SQLite + pgvector),成为下一次同类任务的参考。不在本地留痕的反馈,等于在帮模型厂商白打工。

下面是一段最小可跑的 Agent 闭环评估代码,展示"业务自治单元"如何用程序化判据替代人工 review:

# 评估一个退款 Agent 的输出是否符合业务规则
import
 json
from
 jsonschema import validate

refund_schema = {
    "type"
: "object",
    "required"
: ["order_id", "amount", "reason", "risk_score"],
    "properties"
: {
        "order_id"
: {"type": "string", "pattern": r"^OD\d{12}$"},
        "amount"
:   {"type": "number", "minimum": 0, "maximum": 50000},
        "reason"
:   {"enum": ["quality", "late", "wrong_item", "other"]},
        "risk_score"
: {"type": "number", "minimum": 0, "maximum": 1},
    },
}

def
 evaluate(agent_output: dict) -> dict:
    try
:
        validate(agent_output, refund_schema)
        if
 agent_output["risk_score"] > 0.8:
            return
 {"verdict": "human_review", "why": "high risk"}
        return
 {"verdict": "accept", "why": "schema ok"}
    except
 Exception as e:
        return
 {"verdict": "reject", "why": str(e)}

这段代码的实际意义:Agent 的输出不再是"人眼看一眼",而是程序化、可审计、可回放的一次判定。 一次 reject 的原因可以被检索、被聚合,成为下次优化 prompt 或工具调用的依据。

范式落地:从"最小闭环"开始的 3 步走

三个范式听上去激动人心,但直觉的"逐个环节替换"是错的。正确的路径是闭环优先、节点开放。

第一步:建立最小的"AI 全流程闭环"。 不要全公司铺开 Copilot,集中火力找一个边界清晰、验证容易的小领域——管理后台的 CRUD、特定 API 封装、监控规则生成。在这个领域里,让 AI 跑通从自然语言需求、到生成代码、自动跑测试、部署验证的全流程。人在闭环里只做两件事:输入任务描述、最终点头验收。

第二步:在闭环内实现"双爬坡"。 一边 AI 模型自身在升级,另一边更关键的是工程规则库在爬坡——每一次 AI 出错被人纠正,这个纠正规则必须沉淀进本地知识库,下次不能再犯。AI 能力 + 规则库,像两个齿轮一样互相咬合着爬坡。一个口径是:每周从纠正日志里抽出 3-5 条高频失败模式,转化为系统级约束。

第三步:复制与扩张。 当这个小闭环的良率稳定下来(经验阈值:80% 的需求能零人工介入实现),就把"AI 全流程 + 确定性裁判 + 知识沉淀"这套模式,像复制生产线一样复制到其他领域。先做形式化程度高的(测试生成、运维脚本),再做难的(系统设计、需求分析)。

新岗位图谱:从"人肉编译器"到"产线设计师"

新范式下,过去很多程序员高薪的本质——为"人肉编译器"的能力付费——正在被系统性替代。但这不意味着岗位消失,而是岗位重新洗牌:

  • AI 产线架构师:最稀缺的终极岗位。负责设计软件生产流水线本身,定义分治结构,规划智能体协作。需要融合软件工程、控制论、领域知识的顶级系统思维。
  • 认知 SOP 工程师:把业务专家和资深开发的"直觉",翻译成 AI 可严格执行的流程、规则和标准。是过去 BP 工程师 + 测试架构师的合体升级版。
  • 偏差守卫专家:AI 系统的"急诊科专家",专门处理千奇百怪的跨领域复杂 bug。需要极强的领域深度、调试能力,以及元认知——知道 AI 不知道什么,比知道 AI 知道什么更重要。
  • 价值函数定义师:定义"什么是好软件"。把商业目标、用户体验、技术债务量化为 AI 产线可优化的客观指标。本质是产品经理 + 数据科学家的合体。

所有新岗位都围绕一个核心:处理不确定性——要么在设计阶段通过系统将其最小化,要么在运行时拥有处理它的超强能力。

真正难的,从来不是技术

三个新范式听上去工程量很大,但拆开看,每一步都有现成工具可以拼。难的从来不是工具,是组织本身——尤其是两件事:

第一件事,是 KPI 改写。 现有绝大多数研发团队的 KPI 还停留在"代码行数、需求完成数、bug 数"这三件套。这套 KPI 在新范式下不仅无效,甚至是反作用——它会让团队继续按"工时计件"的方式使用 AI,而不是按"闭环良率"的方式设计 AI。一线开发者的核心 KPI,必须从"完成需求"改成"将负责模块的隐性知识结构化沉淀进系统知识库"。 经验沉淀率,而不是代码量,才是新范式下的硬通货。

第二件事,是治理。 当 AI 是流程主体时,所有 AI 决策都必须可追溯、可解释、可回滚。这要求企业建立三套基础设施:模型行为审计日志(每一条 AI 输出对应到 prompt、上下文、工具调用链)、业务影响回放(任何一次 AI 上线后 7 天内的业务指标,都能在 30 秒内被还原到 AI 决策上)、红线清单(涉及金钱、账户、支付、凭据的改动,人类必须在场)。

这两件事,任何一件没做对,新范式就会退化成"Copilot 加量版"。工具升级从来不是范式革命,治理升级才是。

50 年后的真正"工程化",靠的不再是更多的方法论

1968 年 NATO 会议给行业留下了"软件工程"这个名字,但真正"工程化"这个目标,要等到 2020 年代后期才具备落地条件。条件不是某一种新方法论,而是三个同时成熟的东西:认知引擎(算力换智能)、确定性裁判基础设施(CI/CD + 类型 + 单测)、业务自治单元切分思维。

三者缺一,任何两个都只是局部优化。三者齐备,软件工程才第一次接近"用能源替代低阶认知"这个工程的本意。

下一阶段的胜负手,不在谁的 Copilot 用得更熟,而在谁先把"AI 中心闭环 + 确定性裁判 + 知识沉淀"这三件套跑通到生产环境。50 年的积累已经够厚,缺的是把积累重新组合的那一步。

基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-06-20 20:35:00 HTTP/1.1 GET : https://www.yeyulingfeng.com/a/774555.html
  2. 运行时间 : 0.123163s [ 吞吐率:8.12req/s ] 内存消耗:4,785.04kb 文件加载:145
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=7badceb8a848b29a81ae734f8725eed1
  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.001143s ] mysql:host=127.0.0.1;port=3306;dbname=wenku;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.002078s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.000801s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000498s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.000715s ]
  6. SELECT * FROM `set` [ RunTime:0.000236s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.000654s ]
  8. SELECT * FROM `article` WHERE `id` = 774555 LIMIT 1 [ RunTime:0.000565s ]
  9. UPDATE `article` SET `lasttime` = 1781958900 WHERE `id` = 774555 [ RunTime:0.003293s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 64 LIMIT 1 [ RunTime:0.000299s ]
  11. SELECT * FROM `article` WHERE `id` < 774555 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.000508s ]
  12. SELECT * FROM `article` WHERE `id` > 774555 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.000476s ]
  13. SELECT * FROM `article` WHERE `id` < 774555 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.007258s ]
  14. SELECT * FROM `article` WHERE `id` < 774555 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.001971s ]
  15. SELECT * FROM `article` WHERE `id` < 774555 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.005128s ]
0.125859s