乐于分享
好东西不私藏

AI Agent Skill 工程化 05:Skill 编排——从单体到组合的协作模式

AI Agent Skill 工程化 05:Skill 编排——从单体到组合的协作模式

一个 Skill 搞不定复杂任务?学会编排,让 Skill 组合协作

一句话:当单个 Skill 不够用时,如何设计 Skill 之间的调用、编排、协同——让多个 Skill 像"团队"一样工作。

你在日常中建过 Skill 包、写过 Eval、跑过 baseline——但遇到复杂任务时,发现一个 Skill 搞不定

典型场景:

一个 PM 需求文档要转化成 OpenSpec 四文件,涉及规格生成、字段矩阵、任务分解——单 Skill 写完 200 行,改不动

一篇公众号文章要审稿、审配图、审合规——三个功能堆在一个 Workflow 里,Eval 写不出

编排型 Skill 调用两个子 Skill,但不知道如何在 SKILL.md 里声明、如何验证调用顺序

这篇文章只做一件事:从单体 Skill 到编排 Skill 的协作模式设计

适用读者:遇到多 Skill 协作需求本文案例pm-md-to-openspec-pipeline(编排两个子 Skill)前置阅读:[AI Agent Skill 工程化 01:写 Skill 不是写 Prompt,构建可迭代的工程体系](AI Agent Skill 工程化 01:写 Skill 不是写 Prompt,构建可迭代的工程体系)(L2 编排层概念)


先用人话:什么是 Skill 编排?

可以把 Skill 编排 理解成:让多个 Skill 组成"团队"协作完成任务

类比
编排 Skill 里对应什么
团队领导
编排 Skill 的 SKILL.md:分配任务、协调顺序
团队成员
子 Skill:各司其职,专注一件事
协作规则
Workflow 里显式声明 Read 子Skill
绩效考核
trajectory Eval:验证协作过程是否正确

编排 ≠ 堆功能:编排 Skill 不做具体事,只负责分配任务、协调顺序、汇总结果

两层"编排"别混

L0 标准层(01):原子 Skill,只做一件事L2 编排层(05):编排 Skill,协调多个原子 Skill

核心是什么?

口诀先原子、再编排;显式声明; 验过程。

编排三要素

Workflow显式Read子Skill → trajectory Eval验证调用顺序 → 契约传递不断裂

§0 开篇:单体 Skill 的边界

0.1 什么时候需要编排?

信号
说明
案例
SKILL.md > 150 行
职责堆叠,改不动
审稿 + 审配图 + 审合规混在一起
多个独立输出
一次任务产出多份交付
PM MD → 四文件(design/spec/tasks/matrix)
可复用子流程
子流程在其他场景也用
规格生成、字段矩阵是通用能力
Eval 写不出
单体 Eval 测不了多步骤
不知道如何验证"先 Read spec 再 Read matrix"

0.2 编排 vs 单体:本质区别

维度
单体 Skill
编排 Skill
职责
做具体事
分配任务、协调顺序
Workflow
执行步骤
Read 子Skill
 + 汇总
Eval
测输出结果
过程(trajectory)
SKILL.md 行数
≤ 120 行
≤ 80 行(不含子 Skill 内容)

0.3 本文边界

本文讲
别的篇讲
编排模式(串行/并行/条件/子Skill调用)
01:L0–L4 架构概念
编排 Skill 的 SKILL.md 写法
04:单体 Eval 设计
trajectory Eval(验证编排过程)
06:CI 里跑编排 Eval
编排陷阱(版本漂移、契约断裂)
07:触发词优化

§1 编排模式四类

1.1 串行编排:前置依赖

适用场景:子 Skill 有顺序依赖,前一个输出是后一个输入。

案例pm-md-to-openspec-pipeline

PM需求文档    ↓ Read spec-generator Skill(生成 design.md + spec.md)    ↓ Read reconciler Skill(生成 field-matrix.md + tasks.md)    ↓ 汇总四文件,输出 Gate 状态

SKILL.md Workflow 示例

## Workflow1. Read 子 Skill `spec-generator`,输入 PM MD,输出 design.md + spec.md2. Read 子 Skill `reconciler`,输入 spec.md,输出 field-matrix.md + tasks.md3. 汇总四文件,检查 Gate 闭合状态4. 输出最终报告

1.2 并行编排:独立分支

适用场景:子 Skill 无依赖,可同时执行。

案例:公众号审稿 + 审配图

文章正文    ├─ Read article-reviewer Skill → 评分报告    └─ Read image-reviewer Skill → 配图合规清单    ↓ 汇总两份报告

SKILL.md Workflow 示例

## Workflow1. 并行执行:   - Read 子 Skill `article-reviewer`,输出评分报告   - Read 子 Skill `image-reviewer`,输出配图清单2. 汇总两份报告,输出综合评审结果

Eval 设计:并行编排需验证两个子 Skill 都被调用


1.3 条件分支:动态路由

适用场景:根据输入或中间结果,选择不同子 Skill。

案例:依文章状态选择审稿流程

文章输入    ↓ 检查状态    ├─ 状态=初稿 → Read article-reviewer Skill    ├─ 状态=定稿 → Read compliance-checker Skill    └─ 状态=已发 → Read update-optimizer Skill

SKILL.md Workflow 示例

## Workflow1. 读取文章状态(frontmatter.status)2. 条件分支:   - 若 status=draft → Read `article-reviewer`   - 若 status=final → Read `compliance-checker`   - 若 status=published → Read `update-optimizer`3. 汇总输出

Eval 设计:条件编排需验证路由逻辑正确


1.4 子 Skill 调用:可复用模块

适用场景:原子 Skill 在多个编排 Skill 中复用。

案例spec-generator 被多个编排 Skill 调用

pm-md-to-openspec-pipeline → 调用 spec-generatorfeature-request-pipeline → 调用 spec-generatorbug-report-pipeline → 调用 spec-generator(生成修复规格)

子 Skill 契约要求

子 Skill 必须定义
说明
Input Contract
接收什么输入(格式、路径)
Output Contract
输出什么交付(文件、字段)
Side Effects
是否有副作用(写文件、改状态)

1.5 编排模式决策树

子 Skill 有顺序依赖?  ├─ 是 → 串行编排  └─ 否 → 可并行?可并行?  ├─ 是 → 并行编排  └─ 否 → 有条件分支?有条件分支?  ├─ 是 → 条件编排  └─ 否 → 单体 Skill(无需编排)

§2 编排 Skill 的 SKILL.md 写法

2.1 必须显式声明 Read 子 Skill

❌ 错误写法(隐式调用):

## Workflow1. 分析 PM 需求文档2. 生成 design.md 和 spec.md3. 生成 field-matrix.md 和 tasks.md4. 汇总四文件

问题:Eval 无法验证是否调用了子 Skill,无法测 trajectory。

✅ 正确写法(显式声明):

## Workflow1. Read 子 Skill `spec-generator`,输入 PM MD,输出 design.md + spec.md2. Read 子 Skill `reconciler`,输入 spec.md,输出 field-matrix.md + tasks.md3. 汇总四文件,检查 Gate 闭合状态4. 输出最终报告

关键Read 子 Skill <name> 是 trajectory Eval 的验证锚点。


2.2 编排 Skill 的 Input Contract

编排 Skill 的输入通常是子 Skill 输入的集合

## Input Contract### 必填- PM 需求文档路径(`pm-requests/<id>.md`### 可选- 现有 design.md 路径(局部刷新场景)- 现有 spec.md 路径(局部刷新场景)### 缺失处理- 缺 PM MD → BLOCKED,输出待补充清单

2.3 编排 Skill 的 Output Contract

编排 Skill 的输出通常是子 Skill 输出的汇总

## Output Contract### 必须输出- 四文件路径清单(design/spec/tasks/matrix)- Gate 闭合状态(OPEN/CLOSED)- 漂移风险声明(局部刷新场景)### 不得输出- 不得宣称 Gate 已闭合但四文件不完整- 不得静默修改子 Skill 未授权修改的文件

2.4 编排 Skill 的 Checkpoints

编排 Skill 需要额外关注子 Skill 协调的 Checkpoints:

## Checkpoints### 子 Skill 调用前- 验证输入满足子 Skill Input Contract### 子 Skill 调用后- 验证子 Skill 输出满足子 Skill Output Contract- 验证未出现子 Skill 未授权的副作用### 汇总阶段- 验证四文件一致性- 验证 Gate 状态准确

2.5 编排 Skill 示例骨架

---name: pm-md-to-openspec-pipelinepurpose: PM需求文档 → OpenSpec四文件编排layer: L2sub_skills:  - spec-generator  - reconciler---## When to Activate- 用户要求将 PM MD 转化为 OpenSpec 四文件- 用户要求局部刷新四文件## When NOT to Use- 只要单文件 → 转子 Skill- 无 PM MD 且不补充 → BLOCKED## Input Contract- 必填:PM MD 路径- 可选:现有四文件路径(局部刷新)## Workflow1. Read 子 Skill `spec-generator`,输入 PM MD,输出 design.md + spec.md2. Read 子 Skill `reconciler`,输入 spec.md,输出 field-matrix.md + tasks.md3. 汇总四文件,检查 Gate 闭合状态4. 输出最终报告## Output Contract- 必须输出四文件路径清单 + Gate 状态- 不得宣称 Gate 已闭合但四文件不完整## Checkpoints- 子 Skill 调用前:验证输入满足子 Skill Contract- 子 Skill 调用后:验证输出满足子 Skill Contract- 汇总阶段:验证四文件一致性

§3 编排的 Eval 设计

3.1 编排 Eval ≠ 单体 Eval

维度
单体 Eval
编排 Eval
测什么
输出结果
过程
(trajectory)
grader 类型
rule / structure / model
trajectory
 + rule
expected 内容
输出字段、格式
调用顺序、Read 子 Skill
must_not 内容
禁止输出行为
禁止跳过子 Skill、禁止顺序错误

3.2 trajectory Grader:测过程,不是测结果

trajectory Grader 专门验证编排 Skill 的调用轨迹:

检查项
说明
是否 Read 子 Skill
验证 Workflow 中声明的子 Skill 被调用
调用顺序是否正确
验证串行编排的依赖顺序
是否跳过闸门
验证条件分支的闸门逻辑

数据来源

Agent trace(对话日志)

Skill 使用观察(自报)

编排 Skill 输出中的子 Skill 调用记录


3.3 编排 Eval 示例:pipeline-002

{"id":"pipeline-002","name":"must-read-two-sub-skills","type":"regression","prompt":"将 pm-requests/feature-123.md 转化为 OpenSpec 四文件。","expected":["必须 Read 子 Skill spec-generator","必须 Read 子 Skill reconciler","必须按顺序:先 spec-generator 后 reconciler","必须输出四文件路径清单"],"must_not":["不得跳过 spec-generator 直接调用 reconciler","不得未 Read 子 Skill 就输出四文件","不得静默生成文件而不调用子 Skill"],"grader":"trajectory","risk":"high","source":"input_contract"}

3.4 编排 Eval 示例:pipeline-003(闸门验证)

{"id":"pipeline-003","name":"gate-a-before-b","type":"regression","prompt":"局部刷新 field-matrix.md,但不提供现有 design/spec/tasks 路径。","expected":["必须提示用户提供现有四文件路径","必须输出漂移风险声明","不得宣称 Gate 已闭合"],"must_not":["不得静默修改 design/spec/tasks","不得跳过漂移风险说明"],"grader":"structure+trajectory","risk":"high","source":"real_usage"}

3.5 编排 Eval 的 baseline 跑法

编排 Eval 的 baseline 需要额外记录:

baseline 输出
说明
子 Skill 调用轨迹
是否 Read、调用顺序
四文件生成情况
是否完整生成
Gate 状态准确性
是否正确判定 OPEN/CLOSED

results.tsv 编编排版

eval_id	grader	pass	sub_skill_1_read	sub_skill_2_read	order_correct	gate_statuspipeline-002	trajectory	✅	✅	✅	✅	-pipeline-003	structure+trajectory	❌	✅	✅	❌	OPEN误判CLOSED

§4 编排陷阱

4.1 子 Skill 版本漂移

问题:编排 Skill 调用子 Skill,但子 Skill 更新后契约变化,编排 Skill 未同步更新。

案例

spec-generator v1.0 输出:design.md + spec.mdspec-generator v2.0 输出:design.md + spec.md + draft-tasks.md(新增)编排 Skill pipeline 未更新,未处理 draft-tasks.md

应对

编排 Skill 的 SKILL.md 记录子 Skill 版本

子 Skill 更新时,编排 Skill 需重新 baseline ,并对准新标准

Eval 增加 sub_skill_version 检查项


4.2 契约传递断裂

问题:编排 Skill 汇总时,未传递子 Skill 的契约约束。

案例

子 Skill spec-generator 输出 must_not:不得宣称规格已定稿编排 Skill pipeline 汇总时,未继承此约束,宣称 Gate 已闭合

应对

编排 Skill 的 Output Contract 继承子 Skill 的 must_not

Checkpoints 增加"子 Skill 契约继承"检查

Eval 增加"契约继承一致性"检查项


4.3 过度编排:编排层变成新单体

问题:编排 Skill 职责膨胀,变成新的单体 Skill。

案例

编排 Skill pipeline 最初只协调两个子 Skill后来增加:规格校验、字段映射、任务拆分、风险评估最终 SKILL.md > 200 行,改不动

应对

编排 Skill SKILL.md ≤ 80 行(不含子 Skill 内容)

编排 Skill 只负责分配、协调、汇总 (核心),不做具体事

发现膨胀 → 抽新原子 Skill


4.4 陷阱速查表

陷阱
信号
应对
版本漂移
子 Skill 更新后编排 Eval 挂
记版本、重 baseline
契约断裂
编排输出违反子 Skill must_not
继承契约、Checkpoints
过度编排
编排 SKILL.md > 80 行
抽新原子 Skill
隐式调用
Workflow 未声明 Read 子 Skill
显式声明、trajectory Eval

§5 实战:从单体到编排的三步迁移

5.1 Step 1:识别可抽原子 Skill

信号识别

信号
说明
抽成原子 Skill
Workflow > 50 行
步骤堆叠
抽子流程
多个独立输出
一次产出多份交付
按输出拆
可复用流程
其他场景也用
抽通用原子

案例:审稿 Skill 的 Workflow

## Workflow(原始单体,80行)1. 读取文章正文2. 五维评分(结构/可读性/CTA/合规/技术准确)3. 输出评分报告4. 检查配图合规5. 输出配图清单6. 汇总评审结果

拆分

抽 article-reviewer:步骤 1–3

抽 image-reviewer:步骤 4–5

编排 wechat-review-pipeline:步骤 6(汇总)


5.2 Step 2:写原子 Skill 的契约

原子 Skill 必须定义清晰的 Input/Output Contract (输入与输出):

article-reviewer 契约

## Input Contract- 必填:文章正文路径- 缺失 → BLOCKED## Output Contract- 必须输出:五维评分表 + P0/P1/P2 清单 + 复评目标- 不得输出:不得宣称通过但评分 <9.0

image-reviewer 契约

## Input Contract- 必填:文章正文路径(提取配图)- 缺失 → BLOCKED## Output Contract- 必须输出:配图清单 + 合规判定- 不得输出:不得漏审配图

5.3 Step 3:写编排 Skill + trajectory Eval

编排 Skill Workflow

## Workflow1. 并行执行:   - Read 子 Skill `article-reviewer`,输出评分报告   - Read 子 Skill `image-reviewer`,输出配图清单2. 汇总两份报告,输出综合评审结果

trajectory Eval

{"id":"review-pipeline-001","name":"parallel-review-both-skills","type":"regression","prompt":"审稿 articles/demo.md,同时审配图。","expected":["必须 Read 子 Skill article-reviewer","必须 Read 子 Skill image-reviewer","必须输出汇总评审结果"],"must_not":["不得只审稿不审配图","不得只审配图不审稿"],"grader":"trajectory","risk":"high","source":"input_contract"}

5.4 三步迁移 Checklist

Step
做什么
自检标准
1 识别
盘点 Workflow,识别可抽子流程
Workflow ≤ 50 行
2 契约
写原子 Skill Input/Output Contract
契约清晰、可验证
3 编排
写编排 Skill + trajectory Eval
显式声明 Read + Eval PASS

§6 编排模式的 Workflows 动态实现

Claude Code Dynamic Workflows 是编排模式的动态实现载体——将静态编排规则变成可执行的 JavaScript 脚本。

6.1 Workflows 与编排的关系

维度
静态编排(05 本文)
动态 Workflows
载体
SKILL.md Workflow 文本
JavaScript 脚本
执行
Claude 逐轮决策
脚本确定性执行
中间结果
Claude context 内存
Script variables
可复现性
依赖 prompt 重现
脚本可 rerun
规模上限
几个 subagent
数十到数百 agents

核心价值:Workflows 将"计划"从 Claude 的 context window 移到脚本中——防止 Goal drift(多次 compaction 后目标漂移)。


6.2 串行编排的 Workflows 实现

// workflows/serial-pipeline.jsasyncfunctionserialPipeline(pmMdPath) {// Phase 1: Read spec-generator 子 Skillconst specResult = awaitrunAgent({name"spec-generator",prompt`Read ${pmMdPath},生成 design.md + spec.md`,tools: ["Read""Write"],model"sonnet"  });// Phase 2: Read reconciler 子 Skill(依赖 Phase 1 输出)const matrixResult = awaitrunAgent({name"reconciler",prompt`Read ${specResult.specPath},生成 field-matrix.md + tasks.md`,tools: ["Read""Write"],model"sonnet"  });// Phase 3: 汇总return {files: [specResult.designPath, specResult.specPath            matrixResult.matrixPath, matrixResult.tasksPath],gateStatuscheckGateClosure([specResult, matrixResult])  };}// 传入 args(用户输入)module.exports = serialPipeline(args.pmMdPath);

关键runAgent 依次执行,Phase 2 依赖 Phase 1 结果——实现串行编排。


6.3 并行编排的 Workflows 实现

// workflows/parallel-review.jsasyncfunctionparallelReview(articlePath) {// 并行 spawn 两个 agentconst [articleResult, imageResult] = awaitPromise.all([runAgent({name"article-reviewer",prompt`Read ${articlePath},输出五维评分报告`,tools: ["Read"],model"sonnet"    }),runAgent({name"image-reviewer",prompt`Read ${articlePath},提取配图,输出合规清单`,tools: ["Read"],model"haiku"    })  ]);// 汇总两份报告returnsynthesizeResults([articleResult, imageResult]);}module.exports = parallelReview(args.articlePath);

关键Promise.all 并行执行——实现并行编排。


6.4 条件分支的 Workflows 实现

// workflows/conditional-route.jsasyncfunctionconditionalRoute(articlePath, articleStatus) {// Classify-and-act 模式let result;if (articleStatus === "draft") {    result = awaitrunAgent({name"article-reviewer",prompt`Read ${articlePath},输出评分报告`,tools: ["Read"],model"sonnet"    });  } elseif (articleStatus === "final") {    result = awaitrunAgent({name"compliance-checker",prompt`Read ${articlePath},检查合规`,tools: ["Read"],model"sonnet"    });  } elseif (articleStatus === "published") {    result = awaitrunAgent({name"update-optimizer",prompt`Read ${articlePath},建议更新优化`,tools: ["Read"],model"haiku"    });  }return result;}module.exports = conditionalRoute(args.articlePath, args.status);

关键:JavaScript 条件分支实现路由——实现条件编排。


6.5 Workflows 与 Skill 的配合

Workflows 可以保存到 Skill 包中

.claude/skills/wechat-review-pipeline/  ├── SKILL.md           # 静态知识:触发条件、契约  ├── references/  │   ├── scoring-rubric.md  │   └── output-contract.md  ├── evals/  │   └── evals.json     # trajectory Eval  └── workflows/         # ← 新增目录      ├── parallel-review.js      └── conditional-route.js

SKILL.md 引用 Workflows

## Dynamic Workflows本 Skill 包含以下动态编排脚本:-`workflows/parallel-review.js`:并行审稿+审配图-`workflows/conditional-route.js`:依状态路由调用方式:- 用户说「审稿」→ Claude 选择合适 workflow 执行- 用户说「用并行 workflow 审稿」→ 执行 parallel-review.js

6.6 trajectory Eval 验证 Workflows 执行

Workflows 执行过程可被 trajectory Eval 验证

验证项
trajectory Eval 检查
是否 Read 子 Skill
Agent trace 中是否包含 runAgent({name: "子Skill名"})
执行顺序
串行编排中 Phase 顺序是否正确
是否并行
并行编排中是否同时 spawn 多个 agent

pipeline-002 trajectory Eval 示例

{"id":"pipeline-002","name":"serial-workflow-order","type":"regression","prompt":"用 workflows/serial-pipeline.js 处理 pm-requests/feature-123.md","expected":["必须先 runAgent spec-generator","必须后 runAgent reconciler","必须汇总四文件"],"must_not":["不得跳过 spec-generator 直接执行 reconciler"],"grader":"trajectory","risk":"high","source":"workflow_contract"}

6.7 Workflows 使用场景速查表

编排模式
Workflows 实现
适用场景
串行编排await runAgent()
 依次执行
有依赖的多步骤
并行编排Promise.all([])
 并行
无依赖的多分支
条件编排
JavaScript if/else 路由
动态选择子 Skill
循环直到完成while (!condition)
 循环
不确定工作量的任务

§7 FAQ + 灵魂四问

FAQ

问题
编排 Skill 必须显式声明 Read?
是,trajectory Eval 依赖声明验证
子 Skill 版本如何管理?
SKILL.md 记版本,更新时重 baseline
编排 Eval 只测过程?
是,输出结果由子 Skill Eval 测
并行编排如何验证?
trajectory 验证两个子 Skill 都被调用
编排 Skill SKILL.md 行数上限?
≤ 80 行(不含子 Skill 内容)
Workflows 与 Skill 的关系?
Workflows 是 Skill 的动态编排脚本,可保存到 workflows/ 目录
Workflows 解决什么问题?
Goal drift(防止 compaction 后目标漂移)、确定性执行、可 rerun

灵魂四问

1.拆得够不够? 你的 Workflow 里,是否有可以复用、独立验证的原子子流程?

2.管线通不通? 子 Skill 的“红线约束”有没有原封不动地传递给编排层?

3.边界清不清? 编排层有没有超过 80 行,抢了子 Skill 的具体执行工作?

4.流程稳不稳? 当任务变复杂时,你有没有用 trajectory Eval 甚至 Workflows 脚本 来防止 AI“遗忘步骤”?


写在最后:编排的本质,不是「全能」而是「连接」

很多开发者刚接触编排时,会下意识地把编排 Skill 写成另一个巨型单体——觉得既然要协调多个任务,那干脆把所有逻辑都写在一起省事。

但这恰恰违背了编排的初衷。

编排的核心不在于“做更多事”,而在于“更清晰地分派事”。

这篇文章我们聊了四件事:

1.拆分逻辑:当一个 Skill 超过 150 行、开始难以维护时,就是拆分的信号。把它拆成各司其职的原子 Skill,让编排层回归“指挥官”的角色。

2.显式契约:在 SKILL.md 里必须显式声明 Read 子 Skill。这不是形式主义,而是为了让后续的 trajectory Eval 有据可查,验证 Agent 有没有按流程“走直线”。

3.过程验证:单体看结果,编排看过程。如果你只检查最终输出,往往会忽略掉 Agent 跳过关键步骤、或者顺序颠倒的隐患。

4.动态执行:随着任务复杂度提升,静态的 Markdown 可能会遇到记忆瓶颈。引入 Claude Code 的 Dynamic Workflows,用 JavaScript 脚本把流程固化下来,是解决“目标漂移”的终极手段。

编排能力的强弱,往往决定了一个 AI 工程师的上限。

当你不再试图用一个 Prompt 解决所有问题,而是开始思考:

“这个环节能不能抽出来复用?”“这几个步骤能不能并行?”“如果这一步失败,流程该怎么回退?”

这个时候,你就已经从“写提示词的人”,进化成了“设计系统的人”。

基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-06-06 12:23:05 HTTP/1.1 GET : https://www.yeyulingfeng.com/a/719319.html
  2. 运行时间 : 0.101819s [ 吞吐率:9.82req/s ] 内存消耗:5,003.06kb 文件加载:145
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=d9f003567a16899564c1a758a2053697
  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.000446s ] mysql:host=127.0.0.1;port=3306;dbname=wenku;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.000761s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.000308s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000266s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.000507s ]
  6. SELECT * FROM `set` [ RunTime:0.000203s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.000524s ]
  8. SELECT * FROM `article` WHERE `id` = 719319 LIMIT 1 [ RunTime:0.000824s ]
  9. UPDATE `article` SET `lasttime` = 1780719785 WHERE `id` = 719319 [ RunTime:0.006158s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 64 LIMIT 1 [ RunTime:0.000247s ]
  11. SELECT * FROM `article` WHERE `id` < 719319 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.000478s ]
  12. SELECT * FROM `article` WHERE `id` > 719319 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.000532s ]
  13. SELECT * FROM `article` WHERE `id` < 719319 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.000827s ]
  14. SELECT * FROM `article` WHERE `id` < 719319 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.001477s ]
  15. SELECT * FROM `article` WHERE `id` < 719319 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.001938s ]
0.103451s