乐于分享
好东西不私藏

OpenClaw 多 Agent 团队协作实战:4 种实现方式、配置详解与可落地流程

OpenClaw 多 Agent 团队协作实战:4 种实现方式、配置详解与可落地流程

如果你在用 OpenClaw,迟早会碰到一个问题:

能不能把一个 Agent 变成一个“团队”?让它像小型组织一样,有协调者、有执行者、有研究员、有分析员,彼此分工、并行协作。

答案是:可以,而且不止一种方式。

但这里有一个很容易踩的坑:很多人一提“多 Agent 团队”,脑子里想的是“一个 CEO + 一堆员工”这种很酷的结构,结果一上来就把配置搞复杂了。实际落地时,更重要的不是“看起来像团队”,而是:

  • • 怎么分工最清晰
  • • 怎么控制上下文污染
  • • 怎么控制 token 成本
  • • 怎么保证权限和隔离
  • • 怎么真的能跑起来

这篇文章,我就把 OpenClaw 里多 Agent 团队协作的 4 种实现方式完整梳理一遍,并且尽量按“你可以照着操作”的标准来写。

文末我还会附上一份 数据采集团队版 openclaw.json 精简可上线样板,你可以直接改路径和模型就开干。


一、先理解:OpenClaw 里的“团队”到底是什么

在 OpenClaw 里,团队协作不是单一功能,而是几套能力的组合:

  1. 1. 多智能体路由(Multi-Agent Routing)
  2. 2. 子智能体(Subagents)
  3. 3. ACP 外部代理(Codex / Claude Code / Gemini CLI 等)
  4. 4. Agent-to-Agent 会话通信(sessions 工具族)

也就是说,OpenClaw 不是简单给你一个“团队开关”,而是给你几种组织方式。

先记住这个判断标准

  • • 要强隔离、不同人格、不同工作区、不同入口 → 用 多智能体路由
  • • 要主控 + 并行执行 → 用 Subagents
  • • 要代码代理团队 → 用 ACP
  • • 要让 Agent 之间直接传话、接力、查历史 → 用 Agent-to-Agent / sessions

这四种能力可以单独用,也可以混合用。


二、3 个基础概念,不搞清楚后面一定乱

1. Agent

一个 Agent 是一个独立“大脑”,通常有自己的:

  • • workspace
  • • AGENTS.md
  • • SOUL.md
  • • USER.md
  • • agentDir
  • • 会话存储
  • • 认证配置

可以把它理解成一个完整独立的角色实例

2. Binding

bindings 是路由规则。

它决定:

某条入站消息,到底应该送进哪个 Agent?

它可以基于这些维度匹配:

  • • channel
  • • accountId
  • • peer.id
  • • guildId
  • • teamId

3. Session

Session 是对话上下文,不等于 Agent。

一个 Agent 可以有很多 Session,比如:

  • • 一个主会话
  • • 多个用户会话
  • • 多个 thread 会话
  • • 多个 subagent 会话

所以要记住一句话:

Agent 是角色,Session 是对话实例。


三、方式 1:多智能体路由(Multi-Agent Routing)

这是最标准、最容易理解的一种多 Agent 组织方式。

它适合什么场景?

比如你希望:

  • • sales 负责销售消息
  • • support 负责客服消息
  • • scraper 负责数据采集
  • • research 负责深度分析
  • • reporter 负责内容输出

每个 Agent:

  • • 用自己的 workspace
  • • 有自己的 session
  • • 用自己的模型
  • • 走自己的工具权限
  • • 接自己的消息入口

这时候就很适合用 多智能体路由


核心配置结构

主要看两块:

agents.list

定义有哪些 Agent。

常用字段包括:

  • • id:唯一 ID
  • • default:是否默认 Agent
  • • workspace:工作区
  • • agentDir:状态目录
  • • model:默认模型
  • • runtime:是否默认 ACP
  • • tools:工具权限
  • • sandbox:沙箱策略
  • • subagents.allowAgents:允许拉起哪些子 Agent

bindings

定义消息如何路由到 Agent。

常用字段包括:

  • • agentId
  • • type:默认 route;ACP 持久绑定时用 acp
  • • match.channel
  • • match.accountId
  • • match.peer
  • • match.guildId
  • • match.teamId

路由优先级

OpenClaw 的绑定匹配是确定性的,优先级一般是:

  1. 1. match.peer
  2. 2. match.guildId
  3. 3. match.teamId
  4. 4. match.accountId
  5. 5. match.accountId: "*"
  6. 6. 默认 Agent

一句话理解:

越具体的规则,优先级越高。


示例 1:按渠道分工

{  agents: {    list: [      {        id: "chat",        default: true,        workspace: "~/.openclaw/workspace-chat",        model: "moonshot/kimi-k2.5"      },      {        id: "research",        workspace: "~/.openclaw/workspace-research",        model: "zai/glm-5"      }    ]  },  bindings: [    { agentId: "chat", match: { channel: "whatsapp" } },    { agentId: "research", match: { channel: "telegram" } }  ]}

效果:

  • • WhatsApp → chat
  • • Telegram → research

示例 2:同一渠道内按具体群/人分工

{  agents: {    list: [      { id: "main", default: true, workspace: "~/.openclaw/workspace-main" },      { id: "scraper", workspace: "~/.openclaw/workspace-scraper" }    ]  },  bindings: [    {      agentId: "scraper",      match: {        channel: "telegram",        peer: { kind: "group", id: "-1001234567890" }      }    },    {      agentId: "main",      match: { channel: "telegram" }    }  ]}

效果:

  • • 指定工作群 → scraper
  • • 其他 Telegram 消息 → main

示例 3:一个 WhatsApp 号服务不同人,但每人独立 Agent

{  agents: {    list: [      { id: "alex", workspace: "~/.openclaw/workspace-alex" },      { id: "mia", workspace: "~/.openclaw/workspace-mia" }    ]  },  bindings: [    {      agentId: "alex",      match: {        channel: "whatsapp",        peer: { kind: "dm", id: "+15551230001" }      }    },    {      agentId: "mia",      match: {        channel: "whatsapp",        peer: { kind: "dm", id: "+15551230002" }      }    }  ]}

这说明:

即使是同一个渠道账号,也可以把不同用户路由到不同 Agent。


实操流程

第一步:创建 Agent

openclaw agents add chatopenclaw agents add research

第二步:查看 Agent

openclaw agents list --bindings

第三步:编辑配置文件

改:

~/.openclaw/openclaw.json

第四步:保存并验证

OpenClaw 很多配置支持热更新,通常不需要手工重启。

第五步:发消息测试

从不同渠道、不同群、不同私聊发消息,看是否进了正确 Agent。


这种方式的优点

  • • 隔离强
  • • 工作区清晰
  • • 人格和权限容易分开
  • • 适合多人、多入口、多业务线

它的不足

  • • 更像“静态组织架构”
  • • 不负责动态并行执行
  • • 不负责自动拆任务

所以,很多人会把它和 Subagents 组合起来用。


四、方式 2:主 Agent + 子 Agent(Subagents)

这是真正最像“团队协作”的方式。

它适合什么场景?

当你给主 Agent 一个复杂任务时,它可以:

  • • 自己做规划
  • • 动态 spawn 几个后台子 Agent
  • • 并行处理不同子任务
  • • 最后汇总结果

比如:

帮我调研 20 个竞品站点,抓取主页信息,整理成表,并给出分类建议。

这时候就非常适合:

  • • researcher 去找目标
  • • scraper 去抓页面
  • • cleaner 去去重清洗
  • • analyst 去做结论
  • • coordinator 最后汇总

Subagents 的工作方式

子 Agent 是从当前 Agent 的执行中派生出来的后台运行。

它们:

  • • 运行在独立 Session 中
  • • 拥有自己的上下文
  • • 做完后会向请求者会话回报结果

典型 Session key 类似:

agent:<agentId>:subagent:<uuid>

关键配置项

agents.defaults.subagents

{  agents: {    defaults: {      subagents: {        model: "minimax/MiniMax-M2.5",        maxConcurrent: 3,        runTimeoutSeconds: 900,        archiveAfterMinutes: 60      }    }  }}

字段含义:

  • • model:子 Agent 默认模型
  • • maxConcurrent:最大并发数
  • • runTimeoutSeconds:运行超时
  • • archiveAfterMinutes:归档时间

agents.list[].subagents.allowAgents

{  agents: {    list: [      {        id: "coordinator",        subagents: {          allowAgents: ["researcher", "scraper"]        }      },      { id: "researcher" },      { id: "scraper" }    ]  }}

表示:

  • • coordinator 可以拉起 researcher 和 scraper
  • • 默认不是任意都能拉
  • • allowAgents: ["*"] 才是全开放

tools.subagents.tools.allow / deny

{  tools: {    subagents: {      tools: {        deny: ["gateway", "cron"],        allow: ["read", "write", "edit", "exec", "process", "web_fetch"]      }    }  }}

注意:

  • • deny 优先级高于 allow
  • • 权限建议先小后大

实战示例:协调者 + 研究员 + 抓取员

{  agents: {    defaults: {      subagents: {        model: "minimax/MiniMax-M2.5",        maxConcurrent: 2,        runTimeoutSeconds: 1200,        archiveAfterMinutes: 60      }    },    list: [      {        id: "coordinator",        default: true,        workspace: "~/.openclaw/workspace-coordinator",        model: "zai/glm-5",        subagents: { allowAgents: ["researcher", "scraper"] }      },      {        id: "researcher",        workspace: "~/.openclaw/workspace-researcher",        model: "moonshot/kimi-k2.5"      },      {        id: "scraper",        workspace: "~/.openclaw/workspace-scraper",        model: "minimax/MiniMax-M2.5"      }    ]  },  tools: {    subagents: {      tools: {        deny: ["gateway", "cron"],        allow: ["read", "write", "edit", "exec", "process", "web_fetch"]      }    }  }}

实际操作方式

方式 A:自然语言触发

你可以直接对 Agent 说:

  • • “把这个任务拆成两个子 agent 并行执行”
  • • “spawn 一个 researcher 做调研,一个 scraper 去抓网页”

方式 B:用 /subagents

/subagents spawn researcher 调研 10 个竞品官网并总结差异/subagents spawn scraper 抓取这些官网的标题、描述和联系方式/subagents list/subagents info <id>/subagents log <id>/subagents steer <id> 补抓价格页和 API 文档页/subagents kill <id>

Subagents 的优点

  • • 非常适合并行任务
  • • 不污染主会话上下文
  • • 可以用更便宜模型降成本
  • • 特别适合长任务和后台任务

它的限制

  • • 子 Agent 默认不能再继续 spawn 子 Agent
  • • 回传是尽力而为,不是百分百强一致
  • • Gateway 重启时,部分未完成回传可能丢失
  • • 默认不给 session 工具族

一句建议

如果你只想先把“多 Agent 团队”跑起来,最优先建议上 Subagents

因为它最像真正的协作团队,而且成本和复杂度都相对可控。


五、方式 3:ACP 外部 Agent 团队

如果你的团队协作偏工程、偏编码,那就不能只看 Subagents 了。

OpenClaw 支持通过 ACP runtime 接入外部代理,比如:

  • • Codex
  • • Claude Code
  • • Gemini CLI
  • • OpenCode
  • • 其他 ACP harness

ACP 适合什么任务?

比如你希望:

  • • 让 Codex 接管一个仓库持续改代码
  • • 让 Claude Code 在 thread 里长期跟进一个工程任务
  • • 让 Gemini CLI 做一段完整工具链执行

这时候,ACP 更适合。

Subagents 与 ACP 的区别

  • • Subagents:OpenClaw 原生后台代理
  • • ACP:外部 harness runtime

可以粗暴记成:

  • • 研究 / 抓取 / 清洗 / 总结 → Subagents
  • • 编码 / 修仓库 / 长时 CLI 任务 → ACP

核心配置项

Agent 默认 runtime 走 ACP

{  agents: {    list: [      {        id: "codex",        runtime: {          type: "acp",          acp: {            agent: "codex",            backend: "acpx",            mode: "persistent",            cwd: "/workspace/repo-a"          }        }      }    ]  }}

字段含义:

  • • type: "acp":该 Agent 默认走 ACP
  • • acp.agent:目标 harness
  • • backend:ACP 后端
  • • modepersistent 或 oneshot
  • • cwd:工作目录

用 bindings 做 ACP 持久绑定

{  bindings: [    {      type: "acp",      agentId: "codex",      match: {        channel: "discord",        accountId: "default",        peer: { kind: "channel", id: "222222222222222222" }      },      acp: {        label: "codex-main",        cwd: "/workspace/repo-a"      }    }  ]}

这表示:

这个指定会话入口会持久绑定到一个 ACP session。


线程绑定支持

如果你要 thread/topic 持续跟随 ACP,需要开这些开关:

  • • acp.enabled = true
  • • acp.dispatch.enabled = true
  • • 渠道级 thread 绑定开关

例如:

{  acp: {    enabled: true,    dispatch: { enabled: true }  },  session: {    threadBindings: {      enabled: true,      idleHours: 24,      maxAgeHours: 0    }  },  channels: {    discord: {      threadBindings: {        enabled: true,        spawnAcpSessions: true      }    }  }}

实际操作方式

自然语言

  • • “用 Codex 在 thread 里持续处理这个仓库”
  • • “把这个任务交给 Claude Code,保持持久会话”

sessions_spawn

概念上等价于:

{  "task": "Open the repo and summarize failing tests",  "runtime": "acp",  "agentId": "codex",  "thread":true,  "mode": "session"}

/acp 命令

/acp spawn codex --mode persistent --thread auto/acp status/acp steer 继续修复剩余测试/acp cancel/acp close

它适合哪类团队?

最适合:

  • • 工程协作团队
  • • 多仓库维护
  • • 编码执行型代理
  • • 技术支持与自动化开发

六、方式 4:Agent-to-Agent 会话通信

第四种方式不一定最显眼,但很重要。

它不只是 spawn,也不只是路由,而是:

一个 Agent 可以查看另一个会话、给另一个会话发消息、接力、追踪进展。


核心配置项

tools.agentToAgent

{  tools: {    agentToAgent: {      enabled: true,      allow: ["coordinator", "researcher", "scraper"]    }  }}

表示允许哪些 Agent 之间进行跨 Agent 会话操作。

tools.sessions.visibility

{  tools: {    sessions: {      visibility: "tree"    }  }}

可选值:

  • • self:只看当前 session
  • • tree:当前 session + 自己拉起的子 session
  • • agent:当前 Agent 的所有 session
  • • all:所有 session

注意:

即便 visibility: "all",跨 Agent 也仍然需要 agentToAgent 许可。


它能干什么?

配合这些工具:

  • • sessions_list
  • • sessions_history
  • • sessions_send

可以实现:

  • • coordinator 看 worker 当前进展
  • • coordinator 给 worker 补充指令
  • • 一个 worker 接另一个 worker 的棒
  • • 某个任务在多个会话之间传递

典型适用场景

比如:

  1. 1. researcher 先完成目标名单
  2. 2. coordinator 查看结果
  3. 3. 再要求 scraper 补抓缺失字段
  4. 4. 最后 reporter 汇总出可交付报告

这就像团队里的内部任务流转。


七、线程绑定:不是一种模式,但非常影响协作体验

严格说,它不是第五种模式,但它会让前面几种模式体验差很多或好很多。

它的作用

让某个 thread / topic / channel 持续绑定某个 subagent 或 ACP session。

常见配置

{  session: {    threadBindings: {      enabled: true,      idleHours: 24,      maxAgeHours: 0    }  },  channels: {    discord: {      threadBindings: {        enabled: true,        spawnSubagentSessions: true,        spawnAcpSessions: true      }    }  }}

字段含义:

  • • enabled:是否允许 thread binding
  • • idleHours:多久没消息自动解绑
  • • maxAgeHours:绑定最长寿命
  • • spawnSubagentSessions:spawn subagent 时是否自动绑定
  • • spawnAcpSessions:spawn ACP 时是否自动绑定

八、如果你是做数据采集,最推荐的团队结构是什么?

我最推荐的是下面这个结构:

  • • coordinator:任务拆解、调度、汇总
  • • researcher:目标调研
  • • scraper:抓取执行
  • • cleaner:清洗整理
  • • analyst:分析结论
  • • reporter:输出交付

为什么这样拆?

因为数据采集工作天然就有这几个阶段:

  1. 1. 确定目标
  2. 2. 访问目标
  3. 3. 采到数据
  4. 4. 清理数据
  5. 5. 输出结论
  6. 6. 整理交付

OpenClaw 很适合按这个链条建 worker。


九、推荐落地组合:先别贪大,按这 3 层来

第一层:最先上

主协调 + Subagents

这是最实用、最划算的。

第二层:等业务清晰后再上

多智能体路由

当你确实需要:

  • • 不同入口
  • • 不同人格
  • • 不同 workspace
  • • 不同客户或业务线

再引入静态路由。

第三层:工程任务再上

ACP

如果你要做代码代理、仓库代理,再引入 ACP。


十、一个可执行的搭建流程

下面给你一套“今天就能开始搭”的流程。

第一步:创建 Agent

openclaw agents add coordinatoropenclaw agents add researcheropenclaw agents add scraperopenclaw agents add cleaneropenclaw agents add analystopenclaw agents add reporter

第二步:写基础配置

写入 ~/.openclaw/openclaw.json

第三步:检查 Gateway

openclaw gateway status

如果没启动:

openclaw gateway start

如果配置改完感觉没生效:

openclaw gateway restart

第四步:查看绑定

openclaw agents list --bindings

第五步:实际测试

你可以直接对主 Agent 下指令:

把这个任务拆成 researcher、scraper、analyst 三个子 agent 并行执行:调研 AI 导航站,抓取首页标题/描述/联系方式,最后输出一份去重分析结果。

或者直接用命令:

/subagents spawn researcher 调研目标网站列表并整理字段/subagents spawn scraper 抓取这批网址标题、描述和联系方式/subagents list/subagents info <id>/subagents log <id>

十一、常见坑位与避坑建议

1. 把 Session 当成多 Agent

session.dmScope 只是 session 分组,不是多 Agent 隔离。

真正隔离还是要靠:

  • • agents
  • • bindings

2. 多个 Agent 共用一个 agentDir

这非常容易出问题,会造成:

  • • 认证冲突
  • • 会话污染
  • • 状态混乱

建议每个 Agent 独立 agentDir

3. 一开始权限全开

尤其是这些能力:

  • • exec
  • • process
  • • browser
  • • sessions_send
  • • sessions_spawn

建议先按角色最小授权,再慢慢放开。

4. Subagents 和 ACP 混着用,但不分场景

记住最简单的分法:

  • • 研究 / 抓取 / 清洗 / 分析 → Subagents
  • • 编码 / CLI harness / 修仓库 → ACP

5. 过度沉迷“CEO + 一堆员工”结构

这种玩法很酷,但一般也更贵、更复杂。

多数情况下:

一个主 Agent + 2~5 个职能 worker,已经非常够用。


十二、结论:哪种方式最值得先做?

如果你今天就要落地,我的建议只有一句:

优先搭“主协调 + Subagents”,再按需要补多智能体路由。

因为这是 OpenClaw 里最自然、最稳妥、最实用的一种团队协作形式。

对于数据采集类工作,这个组合尤其合适:

  • • coordinator 负责拆任务
  • • researcher 负责调研
  • • scraper 负责抓取
  • • cleaner 负责清洗
  • • analyst 负责结论
  • • reporter 负责交付

这就已经是一支很能打的小团队了。


附录:数据采集团队版 openclaw.json 精简可上线样板

下面这份样板偏实用,去掉了大量解释性注释,适合直接落地修改。

{  gateway: {    reload: {      mode: "hybrid",      debounceMs: 300,    },  },  session: {    scope: "per-sender",    dmScope: "per-channel-peer",    reset: {      mode: "idle",      idleMinutes: 240,    },    resetByType: {      direct: { mode: "idle", idleMinutes: 480 },      group: { mode: "idle", idleMinutes: 180 },      thread: { mode: "idle", idleMinutes: 240 },    },    resetTriggers: ["/new", "/reset"],    threadBindings: {      enabled: true,      idleHours: 24,      maxAgeHours: 0,    },  },  agents: {    defaults: {      userTimezone: "Asia/Shanghai",      timeFormat: "24h",      model: {        primary: "zai/glm-5",        fallbacks: [          "moonshot/kimi-k2.5",          "minimax/MiniMax-M2.5",        ],      },      heartbeat: {        every: "30m",      },      subagents: {        model: "minimax/MiniMax-M2.5",        maxConcurrent: 3,        runTimeoutSeconds: 1200,        archiveAfterMinutes: 120,      },      sandbox: {        mode: "off",      },    },    list: [      {        id: "coordinator",        default: true,        name: "Data Coordinator",        workspace: "~/.openclaw/workspace-coordinator",        agentDir: "~/.openclaw/agents/coordinator/agent",        model: "zai/glm-5",        subagents: {          allowAgents: [            "researcher",            "scraper",            "cleaner",            "analyst",            "reporter",          ],        },      },      {        id: "researcher",        name: "Research Worker",        workspace: "~/.openclaw/workspace-researcher",        agentDir: "~/.openclaw/agents/researcher/agent",        model: "moonshot/kimi-k2.5",      },      {        id: "scraper",        name: "Scraper Worker",        workspace: "~/.openclaw/workspace-scraper",        agentDir: "~/.openclaw/agents/scraper/agent",        model: "minimax/MiniMax-M2.5",      },      {        id: "cleaner",        name: "Cleaner Worker",        workspace: "~/.openclaw/workspace-cleaner",        agentDir: "~/.openclaw/agents/cleaner/agent",        model: "minimax/MiniMax-M2.5",        tools: {          deny: ["browser", "canvas"],        },      },      {        id: "analyst",        name: "Analyst Worker",        workspace: "~/.openclaw/workspace-analyst",        agentDir: "~/.openclaw/agents/analyst/agent",        model: "zai/glm-5",      },      {        id: "reporter",        name: "Reporter Worker",        workspace: "~/.openclaw/workspace-reporter",        agentDir: "~/.openclaw/agents/reporter/agent",        model: "moonshot/kimi-k2.5",        tools: {          deny: ["exec", "process", "browser", "canvas"],        },      },    ],  },  bindings: [    {      agentId: "coordinator",      match: {        channel: "telegram",        accountId: "default",      },    },  ],  tools: {    sessions: {      visibility: "tree",    },    sessions_spawn: {      attachments: {        enabled: true,        maxTotalBytes: 5242880,        maxFiles: 10,        maxFileBytes: 1048576,        retainOnSessionKeep: false,      },    },    subagents: {      tools: {        deny: ["gateway", "cron"],        allow: [          "read",          "write",          "edit",          "exec",          "process",          "web_fetch",          "browser",          "session_status",        ],      },    },  },  channels: {    telegram: {      enabled: true,      botToken: "${TELEGRAM_BOT_TOKEN}",      defaultAccount: "default",      dmPolicy: "allowlist",      allowFrom: ["tg:7804159892"],      groups: {        "*": {          requireMention: true,        },      },      historyLimit: 50,      replyToMode: "first",      linkPreview: true,      streaming: "partial",      actions: {        reactions: true,        sendMessage: true,      },      reactionNotifications: "own",      mediaMaxMb: 100,    },  },}

如果你打算继续深入,可以沿着这个顺序逐步迭代:

  1. 1. 先跑通 coordinator + subagents
  2. 2. 再细分权限和工具
  3. 3. 再按渠道/群/客户加 bindings
  4. 4. 最后在工程任务里引入 ACP

这样最稳,也最不容易把自己绕进去。

基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-04-03 14:23:48 HTTP/1.1 GET : https://www.yeyulingfeng.com/a/497044.html
  2. 运行时间 : 0.206947s [ 吞吐率:4.83req/s ] 内存消耗:4,962.73kb 文件加载:145
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=ac7048b997d978fd65fa1e2f9979a522
  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.000389s ] mysql:host=127.0.0.1;port=3306;dbname=wenku;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.000523s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.000247s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000273s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.000502s ]
  6. SELECT * FROM `set` [ RunTime:0.001018s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.000640s ]
  8. SELECT * FROM `article` WHERE `id` = 497044 LIMIT 1 [ RunTime:0.008796s ]
  9. UPDATE `article` SET `lasttime` = 1775197428 WHERE `id` = 497044 [ RunTime:0.017708s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 64 LIMIT 1 [ RunTime:0.002236s ]
  11. SELECT * FROM `article` WHERE `id` < 497044 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.001067s ]
  12. SELECT * FROM `article` WHERE `id` > 497044 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.000428s ]
  13. SELECT * FROM `article` WHERE `id` < 497044 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.001290s ]
  14. SELECT * FROM `article` WHERE `id` < 497044 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.005901s ]
  15. SELECT * FROM `article` WHERE `id` < 497044 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.001084s ]
0.209933s