乐于分享
好东西不私藏

AI时代的水务架构:从厂站网河到算法系统——第4篇:水务行业Agent的定义、基本结构与三类基础形态

AI时代的水务架构:从厂站网河到算法系统——第4篇:水务行业Agent的定义、基本结构与三类基础形态

在前两篇文章中,分别从业务能力与Agent Case(AI Use Case )两个层面,以污水厂为例,对水务AI应用的业务抽象进行了铺垫。其中,“能力”指污水厂应具备的业务能力,是企业架构管理中业务架构的核心组成部分。AI Use Case 阐明了这些能力在特定场景下的触发机制,以及为实现何种目标、遵循何种约束被组织起来。在这些概念之下,仍有一个关键问题需要进一步搞清楚:在水务AI应用中,承担感知、判断、协同与执行职责的“Agent”究竟是什么。之所以单独讨论这一问题,是因为当前“大模型”、“智能问答”、“聊天助手”和“Agent”几个概念经常被混用。这种混用并非只是术语层面的不严谨,而是会直接影响项目定位、系统设计和治理方式。如果一个项目将聊天机器人误认为Agent本身,那么其建设结果往往只是增加了一层对话入口,而没有形成真正面向运行目标的闭环单元。对污水厂而言,这种偏差尤其需要避免,因为水厂并不止于需要一个泛化的会说话的工具,而更需要能够在明确业务目标、严格安全边界与既定工艺约束下自主运行的数字化主体。

    本文尝试探讨三个事情:第一,区分Agent与聊天机器人的差别;第二,提出一套适用于行业的Agent结构模型和分类方式;第三,将 Agent 放回能力、Use Case、Task Graph 与后续 Workflow 的整体链路中,确立其在AI水务架构中的准确位置。阅读对象是程序员、架构工程师、AI智能化技改项目经理、技术管理者。

术语说明“Agent”一词与中文“智能体”在本专栏系列文章中等同,本质上均指围绕明确运行目标,在既定约束条件下,通过感知运行状态、自主进行决策并推动执行的一类数字化运行主体(计算实体)。为便于与传统软件模块、聊天机器人等概念区分,后文在涉及架构与实现细节时统一采用“Agent”这一术语,在需要面向非技术读者解释时,视情况使用“智能体(Agent)”的表述。

一、为什么需要先区分Agent与聊天机器人

    在很多与大模型相关的讨论中,聊天机器人往往成为人们理解AI应用的第一入口。这并不奇怪,因为聊天界面符合人的自然使用习惯,也降低了信息获取和系统交互的门槛。然而如果将聊天机器人等同于Agent,就会在架构设计实施方面埋下隐患。

    聊天机器人本质上是一种自然语言交互工具。主要是理解用户提出的问题,并基于知识、上下文和模型推理生成回答。其价值通常体现在三个方面:第一,降低复杂系统的使用门槛;第二,增强知识查询、规程解释和报表说明等非结构化信息服务能力;第三,为已有系统增加更自然的访问方式。这类能力有一定意义,尤其在水厂这样系统繁杂、人员数字化水平参差不齐的环境中,统一的信息入口和解释界面本身就具有不低的价值。

    但是,Agent不能只是这样一种界面交互工具,而更应该是一种围绕目标组织起来的运行单元。它不仅仅是回答问题,更要持续接收状态、识别条件、形成判断、调用能力,并在必要时推动行动发生。换言之,聊天机器人解决的是人机交互(包括获取推理及生成的信息也是交互),而 Agent解决的是谁在什么约束下、围绕什么目标自主持续开展工作。两者可以结合,但不能混同。

    以曝气调节这一典型场景为例,二者差别非常明显。一个聊天机器人窗口可以回答“夜间低负荷时是否应降低曝气量”、“DO过高可能由哪些因素造成”之类的问题,也可以根据知识库提供较为合理的解释性建议。这种能力有助于培训和辅助分析,但其本身并不对现场运行结果负责。但是,一个面向曝气优化的 Agent,则需要在特定工况下持续感知 DO、进水负荷、能耗、设备状态等数据,根据目标函数和约束条件形成调节策略,并将结果以建议、审批申请或控制指令的形式输出给运行系统或岗位人员。两者可能调用同一个大模型,但它们在系统中的职责完全不同。进一步说,聊天机器人以用户提问为起点,其交互是被动触发的;而Agent则更多以事件驱动为为起点,其行为是持续且具有自主性的。前者围绕对话展开,后者围绕任务闭环展开。对于污水厂这种典型的连续性过程工业场景来说,需要的显然不是一套回答流畅、无所不晓的系统,而是能否稳定地参与到监控、分析、优化、协同和执行之中,是不是在业务流程当中。

    不在概念上将 Agent与聊天机器人做区分,Agent设计和开发后续工作包括Task Graph、Tool/Skill、Workflow、Runtime 和 Control Plane等等就会失控。架构会沦为一个玩具生产线,生产带聊天框的玩具型知识系统,而不是真正的生产级应用。

二、面向水务行业的Agent定义

    如果说前面的讨论主要是为了将 Agent 与聊天机器人区分开,接下来我们再试着给出一个Agent 定义,这个定义不是技术术语,也不是满足某类产品宣传,而应该同时被业务人员、架构工程师、开发人员和管理者所理解。

    从业务视角看,Agent 可以理解为某一类虚拟的专业岗位。这里的岗位并不一定严格对应现有编制,而是指一组围绕目标、指标和职责组织起来的专业工作内容。例如,工艺Agent、设备管理 Agent、合规监控Agent 等之所以有意义,不在于它们是否完全对应现实中的某一个人,而是能够把复杂系统中的职责边界表达清楚,使业务人员理解这个Agent究竟是干什么的。

    从技术视角看,Agent 则应被理解为围绕特定目标,封装了一组 Tool、Skill、模型能力和状态处理逻辑的自主任务单元。它并不是一个单独的大模型实例,而是一个具有输入、上下文、约束、策略、动作输出和执行边界的工程对象。我们从技术上看Agent,跟所谓的聪明聊天玩具之类没有关系,而是可以被设计、编排、治理和审计的应用单元。

    从管理视角看,Agent更接近于可被授权、可被考核、可被托管的数字员工。管理角度需要确定,一个 Agent 可以做什么,不可以做什么;由谁授予其执行权限;对哪些指标承担影响责任;在表现不佳或出现异常时由谁复盘和调整。如果一个对象不能被纳入管理体系,它就不可能在水厂这样的生产组织中成为真正可持续的运行主体。这是AI的组织融入,是我目前能想到的AI应用的最高级,因为只有这样AI应用才算是生根落地。

    基于上述三个视角,我们给出如下定义:水务/水厂Agent,是指围绕明确运行目标,在既定约束条件下,利用多源数据持续感知状态、形成判断,并以建议、协同或执行方式推动业务动作发生的数字化自主运行体。它既是特定岗位职责的数字化承载形式,也是应用架构中可编排、可治理的执行单元,还应当能够被纳入生产管理与安全治理体系之中。

三、水务Agent的基本结构

    为了避免在业务需求、技术实现和算法选型三个方面对Agent理解不一致,有必要先建立一个足够简洁但又具有工程可落实性的统一模型。我们建议使用如下公式来概括Agent 的基本结构:Agent=目标+感知+决策+执行。这一定义并不追求滴水不漏,而是希望提供一个业务、技术和算法都能够理解的共识框架。

    首先是目标。任何一个有意义的 Agent,都必须围绕明确目标而存在。这个目标不能停留在“帮助运行人员”或“提高效率”这样的泛泛描述,而应尽量对应到可被衡量的业务目标和 KPI上。例如,保障出水 COD、NH3-N 稳定达标;在满足稳定性的前提下降低单位水量能耗;控制污泥与药耗综合成本;缩短异常事件响应时间等。目标决定了Agent的存在理由,也决定了后续评价一个Agent是否有效的基本标准。

    其次是感知。Agent 要能够感知运行状态,而不是仅仅等待人来描述状态。这意味着它必须拥有与目标相关的数据处理能力,包括 SCADA实时数据、监测化验数据、设备工况、历史趋势、气象预测、上游排放信息以及来自其他系统的事件信号等等。如果没有感知能力,Agent就只能是一个被动的应答器,实际上无法成为业务链条中的环节。

    再次是决策。解决基于目标与状态,应该怎么处理问题。在污水厂中,决策逻辑可以是显式规则、传统控制或者优化模型,也可以是规则、模型与大模型推理的混合结构。需要强调的是,决策并不一定等于自由发挥,更不是让大模型无边界地产生方案。相反,它应当是在明确约束、可调用能力和组织权限之内,对行动方案进行筛选和编排。

    最后是执行。Agent的输出不应只限于文字,而应该是具体的操作指令或任务等。根据不同场景,输出告警事件、运行建议、分析报告、审批请求等,也可以是控制指令或设定值调整,也可以是工单。执行并不意味着完全自动化,但至少意味着Agent的输出能结构化接入生产流程,并实际影响后续动作。也就是说,Agent进入了业务链条。

    与上一篇文章中的AI Use Case(Agent Case)结构相对照,可以看到二者是一致的。AI Use Case通过 Trigger、Goal、KPI、Constraints、Limits、Available Actions、Data Access 等字段,把一个场景中的目标、边界和资源描述出来;而本文的Agent公式框架则是在更高一层将这些字段归并为目标、感知、决策、执行四个核心部分。所以,Agent 不是凭空出现的技术对象,而是由能力、Use Case 与 Agent Case 向下收敛之后形成的自主执行主体。技术和业务在这里贯通了。

四、三类基础Agent:监控、建议与执行

    如果不对Agent做基本分类,容易出现职责交叉和边界混乱。在系统设计时也难以判断哪些能力适合自动化、哪些必须留在人机协同层面。因此,有必要先建立一组足够清晰的基础类型。以水厂和污水厂为例,我们建议首先区分三类基础 Agent:监控型 Agent、建议型 Agent 和执行型 Agent。

    监控型Agent主要负责“看”。其核心职责是持续监控关键指标、识别异常状态、生成事件并触发后续处理。它与传统报警逻辑的区别在于,不只是判断是否越过某条阈值线,而是能够综合趋势、组合指标、上下游联动关系和预测信息,对运行状态做出更接近业务语义的识别。举例子,进水负荷异常监控 Agent 不只是监视 COD 或流量是否突增,更要判断这种变化是否构成真正的工况切换,是否会在未来数小时内演变成出水风险,以及是否需要触发更高优先级的处置方案。

    建议型Agent 主要负责“想”。它在监控型 Agent 提供的状态识别和事件触发基础上,针对具体目标形成策略建议。其产出通常是结构化建议,而不是直接控制动作。举例子,在低负荷夜间运行场景中,建议型Agent可以根据当前负荷、历史能耗曲线和出水稳定性要求,生成一组曝气优化建议,包括推荐的设定值范围、可能的节能效果以及潜在风险说明,供中控员或工艺工程师确认。这一类Agent的关键价值,在于将经验性判断转化为可重复、可比较的方案生成能力。

    执行型Agent主要负责“做”。它是在既定权限和边界内,将决策结果真正转化为动作的 Agent 类型。例如,在出水总氮达标控制场景中,执行型 Agent 可以在获得授权的条件下,直接调整回流比、曝气强度或相关设定值,并根据反馈继续修正控制过程。这一类Agent 的引入,意味着系统已不再停留于看问题或提建议,而是开始承担运行结果层面的实际责任。因此,其约束设计、权限设计和审计设计也必须更加严格。

    这三类Agent并不是互斥关系,更常见的情况是三者在一个完整的AI Use Case中协同。监控型Agent 识别工况和事件,建议型 Agent 形成策略方案,执行型 Agent 在授权条件下落地实施,并将结果再次反馈给监控层和管理层。通过这种分工协作,能将复杂场景拆解为职责清晰、便于治理的任务单元。

    这种分类方式有一个很重要的用意,即为后续的Task Graph和Workflow明确角色契约、接口等标准模板。一旦节点被定义为监控、建议或执行,其输入输出、权限、审计方式及人机协作关系即可固化,无需在每个项目中重新定义。

五、Agent与能力、Use Case的关系

    我们再说明一下Agent 与能力、Use Case之间的关系。

    从概念层次上看,能力指“企业能够做什么”,Use Case指在何种场景下、为实现何种目标而调用这些能力,而 Agent指在该场景中由哪些数字化主体承担具体工作。也就是说,能力是稳定的业务抽象,Use Case 是能力在场景中的组织方式,Agent则是围绕该组织方式实际运转起来的执行角色。

    以之前写过的“暴雨前两小时厂网预调度”为例。如果从能力看,这属于厂网一体化调度能力的一部分;如果从Use Case看,它对应的是“暴雨前两小时预调度”这一特定场景,其重点在于触发条件、调度目标、参与对象和约束边界;而 Agent则需进一步拆解为多个承担不同职责的独立模块,如降雨来水预测模块、调度策略生成模块、调度执行模块。没有 Agent,场景仅停留在需求层面;有了 Agent,场景才具备可执行的载体。

    这种区分非常重要。若不区分能力、Use Case 和 Agent,就容易把一个长期稳定存在的业务能力,误写成一个一次性场景;也容易把一个本应由多个 Agent 协作完成的场景,简单压缩为一个总的Agent 解决全部问题。这样容易因为概念混乱导致系统边界模糊,既不利于业务沟通,也不利于后续工程拆解。而关系一旦理顺,后续从单个 Agent 走向多个Agent协作,再走向Task Graph与 Workflow 编排时,实现路径就比较清楚了。

六、Agent的边界与人机共治

    任何影响物理世界的 AI,都必须被约束,这一观点在我们这个专栏系列文章中被视为基础前提。因而,在界定 Agent 时,不能只讨论其能力,还必须同步讨论其边界、安全杆以及人在回路的位置。

    首先,并非所有事情都适合交由执行型 Agent 自动完成。那些高频、低风险、边界清晰、动作可回退且已有较强工艺共识的任务,更适合纳入自动执行范围,例如在有限区间内的小幅参数调整、对标准化报表的自动生成、对已定义事件的自动通知等。相反,涉及重大模式切换、关键设备启停、合规高风险动作或需要跨岗位协调的决策,通常不宜直接授权给执行型Agent,而应保留人工审批和确认环节。

    其次,Agent 必须具备在不确定条件下主动让人接入的能力。人在回路并不是一句泛泛的原则,而是当数据缺失、判断信心不足、工况超出既有场景假设、或动作将突破预设权限时,Agent应当自动降级,停止进入高风险执行路径,并将关键信息结构化地提交给相应岗位人员处理。这种机制的本质,是防止系统在错误前提下继续扩大影响,而不是事后再由人来收拾残局。

    最后,边界不应只写在制度文件里,而应当内嵌在 Agent 的结构表达中。上一篇文章中已经通过 Constraints、Limits、Available Actions 等字段,为 Agent Case 写入了工艺约束、限额和可执行动作范围。这些字段不只是文档说明,而要进入到后续 Task Graph、Workflow 与 Runtime的设计,使其成为执行过程中可检查、可阻断、可审计的控制条件。

    我们再强调一下,安全边界和人机共治不是 Agent之外的补充设计,而是 Agent定义和设计本身的一部分。

七、为Task Graph与 Workflow预留接口

    一个Agent框架,除了目标、感知、决策和执行四个核心要素外,至少还应补充三类信息。

    第一类,是它关联哪些 Tool 与 Skill 类型。例如,它需要的是预测类能力、优化类能力、报告生成能力,还是直接控制类能力。这些信息的意义,在于帮助后续从 Agent 进一步下钻到能力注册、能力编排和执行实现层。

    第二类,是它与其他 Agent 的关系结构。Agent通常不是孤立工作的,它可能接收上游监控 Agent 的事件,也可能将输出传给下游执行 Agent 或管理层工作流。因而,在定义 Agent 时,就应提前写清其上游输入、下游输出和协同边界。这实际上是在为后续的 Task Graph 节点关系和 Workflow 编排关系打底。

    第三类,是它与人的协作方式。谁审批,谁确认,谁可以中断,谁对结果负责,谁负责事后复盘,这些问题都不应等到系统上线后再临时约定,而应在设计Agent时先定义清楚。否则,即使技术上完成了多 Agent协作,组织层面也很难形成稳定运转的人机协同机制。

    本文承接前文关于企业能力和AI Use Case 的业务抽象,同时为后文关于 Task Graph、Workflow、Runtime 和 Control Plane 的展开提供基础。也就是说从这篇文章开始,我们把焦点转向Agent以及Agent如何被组织、约束和编排,后文逐次展开。

结语

    在水务行业讨论 Agent,最重要的并不是追逐一个流行概念,而是为 AI 系统找到一个能够在业务、技术与管理三方面同时成立的基本单元。先将 Agent与聊天机器人区分开,务必避免把对话界面当成Agent该有的形式,那样AI将无所作为。我们先明确 Agent 由目标、感知、决策、执行四部分构成,使其在工程上可以被设计和复用;再是明确其边界、权限和协作关系,使其真正进入水务/水厂生产运营体系。因此,Agent 并不是简单地说上大模型所能概括,而是在水务生产运营活动中承担具体职责、围绕目标运转并受约束治理的自主运行单元。

基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-06-02 06:45:20 HTTP/1.1 GET : https://www.yeyulingfeng.com/a/693292.html
  2. 运行时间 : 0.108560s [ 吞吐率:9.21req/s ] 内存消耗:4,817.63kb 文件加载:145
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=c61bdb9efb1592311b71726e30d689a1
  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.000534s ] mysql:host=127.0.0.1;port=3306;dbname=wenku;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.000745s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.000299s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000257s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.000588s ]
  6. SELECT * FROM `set` [ RunTime:0.000212s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.000567s ]
  8. SELECT * FROM `article` WHERE `id` = 693292 LIMIT 1 [ RunTime:0.002906s ]
  9. UPDATE `article` SET `lasttime` = 1780353920 WHERE `id` = 693292 [ RunTime:0.002818s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 64 LIMIT 1 [ RunTime:0.000235s ]
  11. SELECT * FROM `article` WHERE `id` < 693292 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.000407s ]
  12. SELECT * FROM `article` WHERE `id` > 693292 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.000408s ]
  13. SELECT * FROM `article` WHERE `id` < 693292 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.000703s ]
  14. SELECT * FROM `article` WHERE `id` < 693292 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.002392s ]
  15. SELECT * FROM `article` WHERE `id` < 693292 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.003573s ]
0.110726s