乐于分享
好东西不私藏

OpenClaw Dev Workflow 插件深度解析

OpenClaw Dev Workflow 插件深度解析

OpenClaw Dev Workflow 插件深度解析

多智能体编排/规格驱动开发/10 步工作流/QA 质量门

从架构设计到源码实现+踩坑避坑+生产级实践

我是atyou, 今天教大家OpenClaw Dev Workflow 插件——一个基于 AI 的规格驱动开发工作流,集成多智能体编排、10 步工作流引擎、21 条代码质量规则和 Ship/Show/Ask 交付框架

在 AI 辅助编程领域,大多数工具停留在「对话式编码」层面——你问一句,它写一行。但真正的工程化开发需要更严谨的流程:需求分析、方案设计、任务拆解、TDD 测试驱动、代码评审、质量门禁、自动化交付。

今天我将深度解析 @openclaw/dev-workflow 插件的完整架构。这是一个为 OpenClaw 设计的生产级开发工作流引擎,支持 Quick/Standard/Full 三种复杂度模式,内置 10 步工作流、多智能体编排系统、10 项 QA 质量门检查和 21 条代码质量规则。

我会从源码层面拆解每个模块的设计思路,并标注实际踩坑点,让你不仅能理解它的工作原理,还能在自己的项目中复用这些模式。

— — — — — — — — — —

一、架构总览:为什么需要规格驱动开发?

传统 AI 编码工具的痛点:缺乏结构化流程、没有质量保障、无法追溯决策。Dev Workflow 插件通过规格驱动(Spec-Driven)的方式解决这些问题。

Step 1规格驱动开发的核心思想

规格驱动开发的本质是「先设计后实现」:AI 在写代码之前,先生成提案(Proposal)、设计文档(Design)和任务列表(Tasks)。这确保每一步都有据可查,避免 AI 盲目编码。

工作流数据模型包含三个核心接口:WorkflowSpec(提案+设计+任务)、WorkflowContext(项目状态+决策记录)、WorkflowTask(单个任务的元数据)。

interface WorkflowSpec {

proposal:string;// 提案文档(Markdown)

design:string;// 设计文档(Markdown)

tasks:WorkflowTask[];// 任务列表

updatedAt:string;

}

图1:Dev Workflow 插件整体架构(作者自绘)

Step 2三种复杂度模式

插件根据任务复杂度提供三种模式,自动裁剪工作流步骤:

Quick 模式 — 快速修复。跳过头脑风暴、技术选型、评审、测试、文档环节。适合单文件修改、bug 修复。

Standard 模式 — 均衡模式。包含完整工作流但 TDD 不强制。适合大多数功能开发。

Full 模式 — 生产级。强制严格 TDD(RED→GREEN→REFACTOR→VERIFY→COMMIT)、QA 质量门阻断式检查、技术选型环节。适合核心功能开发。

💡模式自动推荐

AgentOrchestrator.analyzeRequirement() 会通过子智能体分析需求复杂度,自动推荐匹配的模式。如果子智能体失败,降级为基于需求词数的启发式分析(词数>50=high=full,>20=medium=standard,否则=quick)。

— — — — — — — — — —

二、10 步工作流引擎:从需求到交付的完整链路

DevWorkflowEngine 是核心引擎,管理 10 个工作流步骤的执行。每个步骤通过 runStep() 方法包装,自动持久化上下文到 .dev-workflow-context.json。

Step 1Step 0: Analysis(项目分析)

工作流启动前,引擎首先分析项目上下文:检测 OpenSpec 目录、Git 状态、package.json 脚本、TypeScript 配置、顶层目录结构。

同时执行 BootstrapManager 检查项目基础设施(lint、test、typecheck 配置),以及 MemdirManager 初始化记忆系统并召回历史决策。

const analysis = await this.orchestrator.runAnalysis(projectDir);

// → "Project: name: dev-workflow, scripts: build, typecheck, test, lint."

// → Dirs: src, tests, dist. TS: true. OpenSpec: true. Git: clean."

📝踩坑记录 #1:Git 状态检测超时

runAnalysis() 中 git status --porcelain 设置了 10 秒超时。如果项目极大(如 monorepo),可能超时返回 "not-a-git-repo"。解决方案:对大项目增加 timeout 参数,或使用 git diff --quiet 替代。

Step 2Step 1: Requirement(需求分析)

子智能体分析需求的复杂度、预估影响文件数、识别受影响模块。输出 JSON 格式:{ complexity, estimatedFiles, affectedModules }。

Step 3Step 2: Brainstorm(头脑风暴)

Standard 和 Full 模式下执行。子智能体提出 3 种不同的实现方案,每种方案包含 pros 和 cons。结果存入 brainstormNotes 供后续步骤参考。

Quick 模式跳过此步骤直接进入规格定义。

Step 4Step 3: Spec(规格定义)

这是核心步骤。子智能体根据需求和头脑风暴笔记,生成完整的 WorkflowSpec:包含 proposal(提案)、design(设计)、tasks(任务列表)。

同时写入 openspec/changes/dev-workflow/ 目录下的 proposal.md、design.md、tasks.json,与 OpenSpec 规范兼容。

writeFileSync(join(openspecDir, 'proposal.md'), spec.proposal);

writeFileSync(join(openspecDir, 'design.md'), spec.design);

writeFileSync(join(openspecDir, 'tasks.json'), JSON.stringify(spec.tasks, null, 2));

💡任务元数据设计

每个 WorkflowTask 包含:id、title、description、difficulty(easy/medium/hard)、estimatedMinutes、dependencies(依赖任务 ID 数组)、files(影响文件)、shipCategory(ship/show/ask)。这些字段共同驱动后续的任务调度和交付策略。

Step 5Step 4: Tech Selection(技术选型)

仅 Full 模式执行。子智能体选择语言、框架、架构模式(如 modular-monolith、microservices)、设计模式(repository、factory、observer)。

Step 6Step 4.5: Plan Gate(计划闸门)

关键设计:在开发前设置闸门,等待用户审批。同时通过 PermissionManager.upgradeToWorkspaceWrite() 将权限从只读升级为可写。

这是安全设计——AI 在获得用户确认前不会修改任何文件。

this.permissionManager.upgradeToWorkspaceWrite();

// 权限升级后,AI 才能执行 git add/commit 等写操作

⚠️踩坑记录 #2:权限升级时机

Plan Gate 是权限升级的关键节点。如果跳过此步骤直接开发,PermissionManager.canWrite() 会返回 false,导致后续 git commit 被 pre-commit 钩子拦截。必须确保 Plan Gate 在 development 之前执行。

Step 7Step 5: Development(开发执行)

开发阶段首先创建 feature 分支(feature/-),然后通过 executeAllTasks() 执行所有任务。

任务执行采用依赖拓扑排序:无依赖任务优先执行,有依赖任务等待依赖完成后执行。如果某个依赖失败,所有下游任务自动取消。

const independent = batch.filter(t => t.dependencies.length === 0);

const dependent = batch.filter(t => t.dependencies.length > 0);

const ordered = [...independent, ...dependent];

Step 8Step 6-8: Review → Test → Docs

Quick 模式跳过这三个步骤。Standard 和 Full 模式依次执行:

Step 6 Review:子智能体审查最近的 git diff 和 commit log,输出 APPROVE 或 REQUEST CHANGES。

Step 7 Test:自动检测测试框架(vitest/jest/pytest),执行测试套件。

Step 8 Docs:根据 spec 的 proposal 和 design 生成 docs/generated.md。

Step 9Step 8.5: GitHub 集成

Full 模式且开启 githubIntegration 时执行:自动创建 git tag(如 v0.1.0)、推送 tag 到远程、更新仓库描述、合并 feature 分支到 main。

通过 gh CLI 工具完成,需要预先 gh auth login。

execSync(`git tag -a ${tag} -m "Release ${tag}"`, { cwd: dir });

execSync(`git push origin ${tag}`, { cwd: dir });

execSync(`gh repo edit --description "${desc}"`, { cwd: dir });

📝踩坑记录 #3:GitHub 操作静默失败

runGitHubSteps() 使用 try-catch 包裹所有 gh 命令,失败时仅记录 "GitHub step skipped" 而不中断工作流。这意味着如果 gh 未安装或未认证,GitHub 集成步骤会静默跳过。建议在 CI 环境中增加前置检查。

Step 10Step 9: Delivery(交付)

交付阶段生成完整的 Delivery Report,包含:项目信息、模式、耗时、任务完成统计(ship/show/ask 分类)、分支信息、规格提案、决策日志、QA 质量门结果。

同时将决策记忆存入 MemdirManager 供未来工作流召回。

Tasks: 4/4 completed (ship:2 show:2 ask:0)

Branch: feature/dev-workflow-1712345678901

— — — — — — — — — —

三、多智能体编排系统:9 大核心方法

AgentOrchestrator 是多智能体编排的核心类,通过 runtime.subagent.run() 和 waitForRun() 管理子智能体生命周期。每个方法对应工作流中的一个智能体角色。

Step 1智能体角色矩阵

不同难度的任务分配给不同能力的模型:

智能体角色

方法

项目分析师

runAnalysis()

需求架构师

analyzeRequirement()

方案设计师

brainstorm()

技术负责人

defineSpec() / selectTech()

高级工程师

executeTask()

代码评审员

runReview()

测试执行器

runTests()

技术写手

generateDocs()

验证官

VerificationAgent.verify()

💡模型选择策略

selectAgent() 根据任务难度映射模型:easy→minimax-m2.5,medium→minimax-m2.5,hard→glm-5.1,extreme→qwen3。这意味着简单任务用低成本模型,复杂任务用高能力模型,实现成本优化。

Step 2子智能体执行模式

所有子智能体调用遵循统一模式:run() 启动 → waitForRun() 等待结果 → getSessionMessages() 提取输出 → JSON 解析。

每个方法都有 fallback 机制——如果子智能体失败(超时、网络错误、解析失败),返回默认值而非抛出异常。

const runResult = await this.runtime.subagent.run({

sessionKey,message: `Requirement: ${requirement}`,

extraSystemPrompt:systemPrompt, deliver: false,

});

const waitResult = await this.runtime.subagent.waitForRun({

runId:runResult.runId, timeoutMs: 120000,

});

// 提取 JSON 输出

const m = text.match(/\{[\s\S]*\}/);

if (m) return JSON.parse(m[0]);

📝踩坑记录 #4:JSON 解析失败

子智能体输出可能包含 Markdown 代码块包裹(```json ... ```)或额外文本。代码使用正则 /\{[\s\S]*\}/ 提取最外层 JSON 对象。但如果智能体输出多个 JSON 对象或格式不规范,解析会失败并触发 fallback。建议在 systemPrompt 中强调 "Return ONLY valid JSON"。

Step 3任务执行与 TDD 循环

executeTask() 是智能体编排中最复杂的方法。它根据模式构建不同的 TDD 提示:

Quick 模式:"Write code and verify it works."——直接编码。

Standard 模式:标准 TDD 循环(RED→GREEN→REFACTOR→VERIFY→COMMIT)。

Full 模式:严格 TDD,强调 "DO NOT skip any step. Tests MUST fail first before implementation."

// Full 模式下的 TDD 提示词

1. RED: Write a failing test first that defines expected behavior

2. GREEN: Write the minimal implementation to make the test pass

3. REFACTOR: Simplify while keeping tests green

4. VERIFY: Run all tests to confirm no regressions

5. COMMIT: Prepare a Conventional Commits message

— — — — — — — — — —

四、Ship/Show/Ask 交付框架:安全交付的三档策略

Ship/Show/Ask 是 Google 提出的代码变更分类框架。Dev Workflow 将其实现为自动化的交付策略,每个任务根据其风险等级分配不同的交付方式。

Step 1三档策略详解

策略

行为

Ship

直接提交,无需审批

Show

提交但标记为需要异步评审

Ask

先运行代码评审,评审通过后才提交

Step 2Ask 策略的评审流程

Ask 策略触发完整的评审流程:orchestrator.runReview() 分析最近的 git diff 和 commit log,子智能体输出评审意见。如果包含 "APPROVE"、"approve" 或 "looks good",则自动提交;否则阻塞并记录评审意见。

case 'ask': {

constreview = await this.orchestrator.runReview(...);

if(review.includes('APPROVE') || review.includes('looks good')) {

this.gitCommit(commit,task.files);

this.context.decisions.push(`Ask→Approved:${commit}`);

}else {

this.context.decisions.push(`Ask→Blocked:${commit}`);

}

}

📝踩坑记录 #5:评审关键词匹配过于简单

当前实现使用字符串 includes() 匹配 "APPROVE"/"looks good"。如果评审员写 "APPROVED"(过去式)或 "LGTM"(常见缩写),匹配会失败导致变更被错误阻塞。建议改用正则 /approve|approved|lgtm|looks good/i 进行不区分大小写的匹配。

Step 3约定式提交自动生成

每个任务提交时,generateCommitMessage() 自动推断 Conventional Commits 格式:type(scope): description。

type 推断规则:包含 "test"→test,包含 "doc"→docs,包含 "fix"/"bug"→fix,包含 "refactor"→refactor,包含 "setup"/"config"/"init"→chore,默认→feat。

scope 从文件路径推断:src/components/Button.tsx → components。

// 推断结果示例

feat(components): add dark mode toggle

fix(auth): resolve token refresh issue

docs: update api reference

test(utils): add edge case coverage

— — — — — — — — — —

五、QA 质量门:10 项检查 + 21 条代码规则

QA Gate 是交付前的最后一道防线。QAGateTool 提供 10 项独立检查,每项检查自动检测项目配置并执行对应命令。

Step 110 项 QA 检查

检查项

检测逻辑

lint

检测 ESLint/Ruff 配置,执行对应命令

format

检测 Prettier 配置,执行 prettier --check

tests

自动检测 vitest/jest/pytest,执行测试

coverage

执行覆盖率检查,阈值 80%

typecheck

检测 tsconfig/mypy,执行 tsc --noEmit

simplify

扫描文件行数(>500)和函数行数(>50)

commits

检查最近 10 次提交是否符合 Conventional Commits

todos

grep TODO/FIXME/HACK/XXX 注释

docs

检查 README.md 存在且内容 >50 字符

rules

执行 21 条代码质量规则检查

Step 221 条代码质量规则

DEV_WORKFLOW_RULES 定义了 21 条规则,分为 error(阻断)和 warning(非阻断)两个级别:

Error 级(6 条) — no-unused-vars、no-any-type、no-duplicate-code、no-debugger、no-hardcoded-secrets、no-global-mutation

Warning 级(15 条) — prefer-const、no-console-log、explicit-return-types、no-magic-numbers、max-file-lines、max-function-lines、no-inline-styles、prefer-immutable、no-deep-nesting、meaningful-names、single-responsibility、no-commented-code、prefer-early-return、no-boolean-params、prefer-pure-functions

💡规则执行时机

规则不仅在 QA Gate 时检查,还会在 executeTask() 的 systemPrompt 中嵌入,指导子智能体在编码时遵守规则。这是「预防优于检测」的设计思想。

Step 3VerificationAgent:独立验证官

VerificationAgent 是一个独立的验证类,在每个任务完成后自动执行 lint、tests、typecheck 三项检查,生成 VerificationReport。

如果 qaGateBlocking 为 true 且验证失败次数达到 MAX_RETRIES(2 次),任务会被标记为失败并阻塞后续依赖任务。

interface VerificationReport {

taskName:string;

lint:CheckResult;// { passed, output, errors }

tests:CheckResult;

typeCheck:CheckResult;

verdict:'PASS' | 'FAIL';

issues:string[];

timestamp:string;

}

— — — — — — — — — —

六、高级特性:记忆系统、工作记忆、Feature Flags

除了核心工作流,插件还包含多个高级特性,提升跨会话协作能力和长期项目维护性。

Step 1Memdir 记忆系统

MemdirManager 管理项目级记忆,支持 initialize(初始化)、recall(召回)、remember(存储)、updateAging(老化更新)。

工作流启动时召回历史记忆,交付时将决策记录存入记忆。这实现了跨会话的知识传承——AI 下次启动时能记住之前的决策。

await this.memdirManager.initialize(projectDir);

const memories = await this.memdirManager.recall(projectDir, 'all');

// → Memory: recalled 3 entries

// 交付时存储决策

await this.memdirManager.remember(projectDir, {

type:'decision',

title:`Workflow decisions for ${projectId}`,

content:decisions.join('\n'),

tags:['workflow', projectId],

});

Step 2Working Memory 三层上下文

WorkingMemoryManager 实现三层上下文:Project(.dev-workflow.md)→ Task(docs/plans/-context.md)→ Step(运行时变量)。

支持自动压缩:shouldCompact() 检测上下文大小,L1 压缩(精简当前步骤)和 L2 压缩(归档已完成任务)。

Step 3Feature Flags 生命周期管理

FeatureFlagManager 不仅管理运行时开关,还跟踪 feature flag 的完整生命周期:创建→启用→扫描代码位置→检测清理候选→标记废弃。

自动扫描源码中的 feature_flags.is_enabled()、useFeatureFlag()、process.env.FF_ 等模式,生成 docs/feature-flags.md 注册表。

interface FeatureFlagEntry {

name:string;

type:'release' | 'ops' | 'experiment' | 'permission';

status:'enabled' | 'disabled' | 'gradual' | 'deprecated';

plannedCleanup:string;// 计划清理日期

codeLocations:string[]; // 代码中的引用位置

}

📝踩坑记录 #6:Feature Flag 清理遗漏

detectCleanupCandidates() 仅检查 plannedCleanup 日期和 deprecated 状态。但如果 flag 的 plannedCleanup 设为 "TBD"(默认值),永远不会被标记为清理候选。建议在创建 flag 时强制设置 plannedCleanup 日期,或增加基于 lastReferenced 时间的自动过期检测。

Step 4Handover 交接文档

HandoverManager 在 session_end 钩子触发且 reason 为 handover 时生成交接文档。新会话启动时,session_start 钩子消费交接文档,恢复项目进度。

这解决了 AI 编码中最常见的上下文丢失问题——当你需要切换模型或中断会话时,进度不会丢失。

Step 5PermissionManager 权限管理

PermissionManager 实现最小权限原则:默认只读,Plan Gate 通过后升级为 workspace-write。pre-commit 钩子验证写入权限,before_tool_call 钩子检测危险操作(DROP、TRUNCATE、push --force、reset --hard、rm -rf)。

Full 模式下,before_tool_call 钩子会扫描工具输入中的危险操作关键词并记录警告。

— — — — — — — — — —

七、事件钩子系统:9 个生命周期钩子

插件注册了 9 个事件钩子,覆盖会话、步骤、任务、工具调用的完整生命周期。

Step 1钩子矩阵

钩子名称

触发时机

session_start

会话开始

session_end

会话结束

pre_step

步骤执行前

post_step

步骤执行后

post_task

任务完成后

pre_commit

提交前

before_tool_call

工具调用前

after_tool_call

工具调用后

task_completed

任务完成

⚠️踩坑记录 #7:重复验证

post_task 和 task_completed 两个钩子都执行了 verificationAgent.verify()。这意味着每个任务会被验证两次,浪费执行时间。建议移除其中一个,或让 task_completed 钩子仅在特定条件下执行。

— — — — — — — — — —

八、源码架构与模块划分

插件采用清晰的模块化架构,16 个源文件分布在 12 个目录中。

Step 1目录结构

核心模块按职责划分:

src/

├── index.ts# 插件入口(defineChannelPluginEntry)

├── types.ts# 领域类型(187 行,21 条规则定义)

├── channel/# 频道插件定义 + 运行时单例

├── engine/# DevWorkflowEngine(564 行,10 步工作流)

├── agents/# AgentOrchestrator + VerificationAgent

├── tools/# 8 个工具(启动、状态、执行、规格、QA、Plan Gate、权限、后台任务)

├── hooks/# 9 个事件钩子(241 行)

├── feature-flags/# Feature Flag 生命周期管理

├── working-memory/# 三层工作记忆管理

├── handover/# 会话交接文档

├── bootstrap/# 项目基础设施检查

├── memdir/# 项目记忆系统

├── permissions/# 最小权限控制

├── background-tasks/# 后台任务管理

├── directory-templates/# 目录模板管理

└── utils/# 工具函数

Step 2依赖分析

插件的依赖极简:

dependencies:

@sinclair/typebox:0.34.49// JSON Schema 验证

zod:^3.24.0// 运行时类型校验

devDependencies:

typescript:^5.7.0

vitest:^3.0.0

oxlint:^0.15.0

openclaw:file:../../../openclaw// peer dependency

💡零外部 LLM 依赖

插件本身不依赖任何 LLM SDK。所有智能体调用通过 OpenClaw 的 runtime.subagent API 完成,这意味着插件是纯粹的「工作流编排层」,与具体模型解耦。这是优秀的设计——更换模型不需要修改插件代码。

— — — — — — — — — —

七、常见问题与排错

7.1子智能体超时怎么办?

症状:executeTask() 或 defineSpec() 报错 timeout

检查 timeoutMs 设置:Full 模式任务执行超时为 600000ms(10 分钟),Standard 为 300000ms(5 分钟),Quick 为 180000ms(3 分钟)

defineSpec() 超时为 180000ms(3 分钟),如果需求复杂可能不够

解决方案:拆分需求为更小的规格,或增加 timeoutMs 参数

检查网络连接和模型服务状态

7.2QA Gate 检查全部通过但交付仍然失败?

排查步骤:

检查 .dev-workflow-context.json 是否被意外删除或损坏

确认 git 仓库状态正常(git status)

检查 feature 分支是否正确创建

查看 decisions 日志中的错误信息

7.3如何在已有项目中启用 Dev Workflow?

安装步骤:

pnpm add @openclaw/dev-workflow --workspace

在 OpenClaw 配置中启用 dev-workflow channel

通过 dev_workflow_start 工具启动工作流

首次启动会自动执行 Bootstrap 检查项目基础设施

dev_workflow_start({

requirement:"添加用户认证模块",

projectDir:"/path/to/project",

mode:"full",

featureFlags:{ strictTdd: true, qaGateBlocking: true }

})

7.4如何自定义 21 条代码规则?

规则定义在 types.ts 的 DEV_WORKFLOW_RULES 常量中。目前不支持运行时自定义,但可以通过 feature flags 的 ruleEnforcement 开关启用/禁用全部规则。

修改源码后需要 pnpm build 重新编译

建议通过 PR 向项目提交自定义规则

规则分为 error(阻断交付)和 warning(仅警告)两个级别

7.5工作流中断后如何恢复?

DevWorkflowEngine 通过 .dev-workflow-context.json 持久化上下文。重启后调用 initialize() 会自动加载已有上下文并恢复进度。

检查 .dev-workflow-context.json 是否存在

确认 currentStep 字段记录了中断位置

HandoverManager 也可用于跨会话恢复

— — — — — — — — — —

八、安全建议

永远不要将 API Key 或凭证硬编码在代码中(no-hardcoded-secrets 规则会检测)

Feature Flag 注册表(docs/feature-flags.md)可能包含敏感信息,应加入 .gitignore

.dev-workflow-context.json 包含项目决策和文件路径,团队共享时注意脱敏

Plan Gate 的权限升级机制确保 AI 在用户审批前不会修改文件

before_tool_call 钩子在 Full 模式下检测危险操作(DROP、TRUNCATE、push --force 等)

⚠️重要提醒

本文中出现的所有代码均为源码分析结果,不涉及敏感信息。在实际使用中,请遵循项目的安全规范和代码质量标准。

— — — — — — — — — —

总结

@openclaw/dev-workflow 插件的核心价值在于将 AI 编码从「对话式」升级为「工程化」:通过规格定义确保设计先行,通过多智能体编排实现角色分工,通过 QA 质量门保障代码质量,通过 Ship/Show/Ask 框架实现安全交付。

关键要点回顾:

三种模式:Quick(快速修复)/ Standard(均衡)/ Full(生产级 TDD)

10 步工作流:Analysis → Requirement → Brainstorm → Spec → Tech Selection → Development → Review → Test → Docs → Delivery

多智能体编排:9 个角色,按难度自动选模型(minimax-m2.5 / glm-5.1 / qwen3)

21 条代码规则:6 条 error 级 + 15 条 warning 级,编码时嵌入提示 + QA 时检测

Ship/Show/Ask:三档交付策略,Ask 模式自动触发代码评审

9 个事件钩子:覆盖会话/步骤/任务/工具调用全生命周期

— — — — — — — — — —

我是atyou, 您有什么感兴趣的主题,可以给我留言。让我们一起拥抱AI, 共同进步,享受美好生活。

参考文档:

OpenClaw 官方仓库

Conventional Commits 规范

Ship/Show/Ask 框架(Google)

TDD 红绿重构循环

基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-04-06 04:00:28 HTTP/1.1 GET : https://www.yeyulingfeng.com/a/500531.html
  2. 运行时间 : 0.096688s [ 吞吐率:10.34req/s ] 内存消耗:5,104.41kb 文件加载:145
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=d071274514324f13ad1e6189582f0350
  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.80 KB )
  145. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-trace/src/Html.php ( 4.42 KB )
  1. CONNECT:[ UseTime:0.000746s ] mysql:host=127.0.0.1;port=3306;dbname=wenku;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.000901s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.000350s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000269s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.000560s ]
  6. SELECT * FROM `set` [ RunTime:0.000232s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.000611s ]
  8. SELECT * FROM `article` WHERE `id` = 500531 LIMIT 1 [ RunTime:0.001416s ]
  9. UPDATE `article` SET `lasttime` = 1775419228 WHERE `id` = 500531 [ RunTime:0.003417s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 64 LIMIT 1 [ RunTime:0.000260s ]
  11. SELECT * FROM `article` WHERE `id` < 500531 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.000698s ]
  12. SELECT * FROM `article` WHERE `id` > 500531 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.000550s ]
  13. SELECT * FROM `article` WHERE `id` < 500531 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.000878s ]
  14. SELECT * FROM `article` WHERE `id` < 500531 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.008093s ]
  15. SELECT * FROM `article` WHERE `id` < 500531 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.000882s ]
0.098460s