当前位置:首页>Linux>【Linux-02】从内核视角理解 Linux 进程管理:机制、实现方式与工程实践

【Linux-02】从内核视角理解 Linux 进程管理:机制、实现方式与工程实践

  • 2026-01-20 19:18:18
【Linux-02】从内核视角理解 Linux 进程管理:机制、实现方式与工程实践

在 Linux 操作系统中,进程管理并不是一个孤立的功能模块,而是贯穿整个系统运行生命周期的核心机制之一。无论是用户直接启动的应用程序,还是后台长期运行的系统服务,亦或是容器环境中的工作负载,最终都需要通过 Linux 内核的进程管理体系来获得 CPU 时间、调度顺序以及运行资格。因此,理解 Linux 进程管理的工作原理,并不仅仅是为了掌握几个常用命令,而是为了理解 Linux 系统在高并发、高负载和复杂业务场景下仍能保持稳定运行的根本原因。

一、Linux 中“进程”的内核定义与抽象方式

在 Linux 内核中,进程并不是一个独立于线程的特殊概念,而是统一抽象为 task_struct 这一内核数据结构。无论是传统意义上的进程,还是用户空间所理解的线程,在内核调度层面都被视为“任务(task)”,其差异仅体现在资源是否共享,例如地址空间、文件描述符表以及信号处理方式等。

这种设计带来的直接结果是,Linux 内核在调度时并不关心这是一个“进程”还是“线程”,而只关心它是否具备运行条件以及其在调度体系中的权重和状态。这也是为什么 Linux 可以在多线程程序、进程池模型以及容器化环境中保持一致的调度行为,而无需为不同抽象单独维护调度逻辑。

二、Linux 进程调度的核心实现方式

1. 调度器的基本职责

Linux 进程管理的核心任务之一,是在有限的 CPU 资源条件下,对多个可运行进程进行合理调度,从而在系统吞吐量、响应时间以及公平性之间取得平衡。调度器的主要职责包括决定下一个获得 CPU 的进程、控制单个进程的运行时长,以及在进程状态发生变化时及时进行调度切换。

2. 完全公平调度器(CFS)的设计思想

当前主流 Linux 内核采用的调度器是完全公平调度器(Completely Fair Scheduler,CFS),其设计目标并不是追求绝对的实时响应,而是在通用计算场景下实现尽可能公平的 CPU 分配。CFS 的核心思想是通过维护每个进程的虚拟运行时间,来衡量其已经获得的 CPU 资源,并优先调度“相对欠缺 CPU 时间”的进程。

在具体实现上,CFS 使用红黑树来管理可运行进程集合,从而保证在进程数量较多的情况下仍能以对数复杂度完成调度选择。这种设计使得 Linux 在高负载条件下不会因为调度本身而成为系统瓶颈,同时也避免了传统时间片调度中常见的优先级反转问题。

3. 不同调度策略的适用场景

Linux 内核同时支持多种调度策略,包括默认的普通调度策略(SCHED_OTHER)、面向批处理任务的 SCHED_BATCH、面向实时任务的 SCHED_FIFO 和 SCHED_RR,以及用于严格时间约束场景的 SCHED_DEADLINE。这些策略的存在并不是为了日常随意切换,而是为特定行业应用提供确定性的调度保证,例如工业控制、音视频处理或通信系统。

在通用服务器和应用开发场景中,绝大多数进程应当使用默认调度策略,由内核统一调度,否则不当的实时调度配置极易导致系统响应能力下降甚至完全失去交互能力。

三、Linux 中与进程管理直接相关的用户级操作

1. 进程状态的观察与分析

Linux 提供了多种工具用于观察系统当前的进程运行情况,其中 ps 用于获取某一时间点的进程快照,而 top 或 htop 则用于实时观察进程的 CPU、内存使用情况以及调度状态。这类工具本质上是通过读取 /proc 虚拟文件系统中由内核导出的实时数据来实现的,因此其展示的信息可以被视为内核状态的用户态映射。

通过分析进程状态字段、CPU 使用比例以及负载信息,系统管理员可以判断当前系统是否存在调度瓶颈、单个进程资源占用异常或线程数量配置不合理等问题。

2. 进程控制与信号机制

Linux 并不直接“终止”进程,而是通过信号机制向进程发送状态变化请求,例如请求其正常退出、暂停执行或立即终止。kill 命令只是信号发送工具,其效果取决于进程对信号的处理方式。

理解信号机制对于系统稳定性至关重要,因为一个能够正确响应 SIGTERM 信号并完成资源清理的应用程序,远比依赖 SIGKILL 强制终止的程序更加健壮,也更符合生产环境对可维护性的要求。

3. 作业控制与交互式管理

在交互式 Shell 环境中,Linux 还提供了作业控制机制,用于在前台和后台之间切换进程执行状态。这一机制虽然看似简单,但在执行长时间运行任务、调试程序或编写自动化脚本时,能够显著提升操作效率,并减少不必要的进程中断和资源浪费。

四、进程资源使用达到最优的应用设计原则

从内核角度来看,调度器的目标是公平分配资源,而不是为某一个应用实现“极致性能”。因此,真正决定进程资源使用效率的,往往是应用本身的设计方式。

合理的应用设计通常会根据任务性质区分 CPU 密集型与 I/O 密集型操作,控制并发规模,避免无意义的忙等待,并通过进程池或线程池减少频繁创建和销毁任务所带来的系统开销。此外,应用程序应当具备良好的信号处理机制和资源回收能力,以便在系统负载变化或服务重启时平稳退出。

当应用设计能够与内核调度机制形成协同关系时,系统整体性能往往会显著优于单纯依赖调度参数调整的结果。

五、与进程管理密切相关的系统配置与机制

1. 优先级与 nice 值的影响

Linux 允许通过 nice 值对进程调度优先级进行调整,但这种调整并不是强制指令,而是向调度器提供的权重参考。合理使用 nice 值可以在多任务环境中降低非关键任务对系统响应的影响,但过度依赖优先级调整并不能替代应用层面的性能优化。

2. cgroups 与现代资源隔离机制

控制组(cgroups)是 Linux 进程管理体系中极其重要的扩展机制,它允许系统管理员对一组进程统一施加 CPU、内存、I/O 以及进程数量等资源限制。容器技术正是基于 cgroups 实现了进程级别的资源隔离,从而在同一台物理机上安全运行多个相互独立的工作负载。

3. ulimit 与系统保护机制

通过 ulimit 限制单个进程可使用的资源数量,可以有效防止程序错误或配置失误导致系统资源耗尽。这种机制在多用户环境和生产服务器中尤为重要,是系统稳定性的重要保障之一。

六、一个典型案例:高并发 Web 服务下的 Linux 进程管理与硬件协同过程

为了避免抽象讨论停留在概念层面,下面以一个真实且具有代表性的场景作为案例,系统性说明 Linux 进程管理是如何在内核层面与硬件协同工作的。

1. 场景设定与硬件环境

假设一台标准的云服务器,其硬件配置如下:

  • 8 核 CPU,支持超线程,总计 16 个逻辑 CPU

  • 32 GB 物理内存

  • NVMe SSD 存储

  • 万兆网卡

服务器运行的是一个典型的高并发 Web 服务,例如基于 Nginx + 后端业务服务的 API 系统,该系统通过多进程模型对外提供 HTTP 服务,同时还存在日志写入、监控采集等后台任务。

在高峰期,该服务器需要同时处理数千个并发连接,而每个连接背后都对应着多个用户态进程或线程的协作执行。

2. 从网络请求到进程唤醒的完整路径

当一个网络请求从外部到达服务器时,首先由网卡接收数据帧,并通过 DMA 机制将数据直接写入物理内存中的接收缓冲区。此时,CPU 并未参与数据搬运,而是由硬件完成高效的数据传输。

网卡在完成数据接收后,会向 CPU 发送一次硬件中断信号,提示内核有新的网络数据需要处理。CPU 接收到中断后,会暂时中断当前正在执行的进程指令流,转而进入内核态执行中断处理程序。

在中断处理过程中,Linux 内核的网络子系统会对数据包进行初步解析,并将其放入对应 Socket 的接收队列中。如果某个用户态进程此前因为等待网络数据而处于睡眠状态,内核会将该进程的状态从“不可运行”切换为“可运行”,并将其加入调度器维护的就绪队列。

这一阶段,进程管理模块并不直接处理网络数据,而是通过状态转换机制,为调度器提供新的可运行任务。

3. 调度器如何决定“谁来处理这个请求”

当当前 CPU 的时间片耗尽,或者发生调度点(例如中断返回、系统调用结束),Linux 调度器开始介入。调度器会在当前 CPU 的可运行进程集合中,根据 CFS 的虚拟运行时间规则,选择一个“相对欠缺 CPU 时间”的进程。

被选中的进程可能正是刚刚被网络中断唤醒的 Web 工作进程。调度器会完成一次上下文切换操作,这一操作包括保存当前进程的寄存器状态、更新内核调度数据结构,并恢复目标进程此前保存的 CPU 上下文。

在硬件层面,这一过程表现为 CPU 寄存器内容的快速切换,而内存管理单元(MMU)会根据进程的页表指针,切换当前有效的虚拟地址映射,从而确保进程只能访问属于自己的地址空间。

4. 进程执行过程中对 CPU 与内存的使用

进程获得 CPU 执行权后,开始在用户态执行应用代码,例如解析 HTTP 请求、执行业务逻辑或查询缓存数据。在这一过程中,CPU 会不断从指令缓存和数据缓存中读取指令和数据,如果缓存未命中,则由硬件自动从主内存中加载。

如果进程需要访问磁盘或进行网络发送操作,通常会通过系统调用再次进入内核态。此时,内核会将相关 I/O 请求提交给对应的驱动程序,并将进程状态设置为睡眠,从而释放 CPU 给其他可运行进程。

这一机制保证了 CPU 不会被 I/O 等待过程占用,从而提高整体吞吐能力。

5. 多核环境下的进程迁移与负载均衡

在多核系统中,Linux 调度器不仅负责单个 CPU 上的进程选择,还需要在多个 CPU 之间进行负载均衡。当某个 CPU 的运行队列较长,而其他 CPU 相对空闲时,调度器会将部分可运行进程迁移到负载较低的 CPU 上。

这一迁移过程涉及到进程在不同 CPU 缓存之间的切换,虽然会带来一定的缓存失效开销,但在高并发场景下,整体吞吐量的提升通常远大于这一成本。

从硬件角度来看,这意味着进程的执行上下文会在不同物理核心之间流转,而 Linux 内核通过精细的调度策略,尽量减少不必要的迁移,从而在性能与公平性之间取得平衡。

6. cgroups 介入后的资源控制过程

如果该 Web 服务运行在容器环境中,其进程通常会被限制在特定的 cgroup 中。此时,调度器在计算进程虚拟运行时间时,会额外考虑 cgroup 层级的 CPU 配额限制,从而确保该服务不会超过预设的资源上限。

在硬件层面,CPU 并不会感知 cgroup 的存在,但内核调度器会通过限制进程获得 CPU 的频率和时长,间接实现资源隔离。这种设计使得多个服务可以共享同一套硬件资源,同时仍然保持相对独立的性能边界。

7.进程管理如何贯穿软硬件边界

通过上述案例可以看到,Linux 进程管理并不是孤立存在的调度逻辑,而是贯穿于从网络中断、内存访问、CPU 执行到 I/O 等待的整个系统运行链路之中。进程管理模块通过状态转换和调度决策,将硬件提供的计算能力转化为可预测、可控制的执行环境。

在这一过程中,硬件负责高效执行指令和数据传输,而 Linux 内核负责在多个进程之间协调这些硬件资源的使用方式。正是这种清晰的分工,使得 Linux 能够在复杂、高负载的真实生产环境中,长期保持稳定和可扩展的运行状态。

最新文章

随机文章

基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-02-08 14:14:44 HTTP/2.0 GET : https://f.mffb.com.cn/a/464712.html
  2. 运行时间 : 0.130589s [ 吞吐率:7.66req/s ] 内存消耗:4,392.20kb 文件加载:140
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=e4986bec47fafe5f70d4b7fe2f3d8250
  1. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/public/index.php ( 0.79 KB )
  2. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/autoload.php ( 0.17 KB )
  3. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/autoload_real.php ( 2.49 KB )
  4. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/platform_check.php ( 0.90 KB )
  5. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/ClassLoader.php ( 14.03 KB )
  6. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/autoload_static.php ( 4.90 KB )
  7. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper.php ( 8.34 KB )
  8. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-validate/src/helper.php ( 2.19 KB )
  9. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/helper.php ( 1.47 KB )
  10. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/stubs/load_stubs.php ( 0.16 KB )
  11. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Exception.php ( 1.69 KB )
  12. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-container/src/Facade.php ( 2.71 KB )
  13. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/deprecation-contracts/function.php ( 0.99 KB )
  14. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/polyfill-mbstring/bootstrap.php ( 8.26 KB )
  15. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/polyfill-mbstring/bootstrap80.php ( 9.78 KB )
  16. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/var-dumper/Resources/functions/dump.php ( 1.49 KB )
  17. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-dumper/src/helper.php ( 0.18 KB )
  18. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/var-dumper/VarDumper.php ( 4.30 KB )
  19. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/App.php ( 15.30 KB )
  20. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-container/src/Container.php ( 15.76 KB )
  21. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/container/src/ContainerInterface.php ( 1.02 KB )
  22. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/provider.php ( 0.19 KB )
  23. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Http.php ( 6.04 KB )
  24. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper/Str.php ( 7.29 KB )
  25. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Env.php ( 4.68 KB )
  26. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/common.php ( 0.03 KB )
  27. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/helper.php ( 18.78 KB )
  28. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Config.php ( 5.54 KB )
  29. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/app.php ( 0.95 KB )
  30. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/cache.php ( 0.78 KB )
  31. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/console.php ( 0.23 KB )
  32. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/cookie.php ( 0.56 KB )
  33. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/database.php ( 2.48 KB )
  34. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/Env.php ( 1.67 KB )
  35. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/filesystem.php ( 0.61 KB )
  36. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/lang.php ( 0.91 KB )
  37. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/log.php ( 1.35 KB )
  38. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/middleware.php ( 0.19 KB )
  39. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/route.php ( 1.89 KB )
  40. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/session.php ( 0.57 KB )
  41. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/trace.php ( 0.34 KB )
  42. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/view.php ( 0.82 KB )
  43. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/event.php ( 0.25 KB )
  44. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Event.php ( 7.67 KB )
  45. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/service.php ( 0.13 KB )
  46. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/AppService.php ( 0.26 KB )
  47. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Service.php ( 1.64 KB )
  48. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Lang.php ( 7.35 KB )
  49. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/lang/zh-cn.php ( 13.70 KB )
  50. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/Error.php ( 3.31 KB )
  51. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/RegisterService.php ( 1.33 KB )
  52. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/services.php ( 0.14 KB )
  53. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/PaginatorService.php ( 1.52 KB )
  54. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/ValidateService.php ( 0.99 KB )
  55. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/ModelService.php ( 2.04 KB )
  56. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/Service.php ( 0.77 KB )
  57. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Middleware.php ( 6.72 KB )
  58. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/BootService.php ( 0.77 KB )
  59. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/Paginator.php ( 11.86 KB )
  60. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-validate/src/Validate.php ( 63.20 KB )
  61. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/Model.php ( 23.55 KB )
  62. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/Attribute.php ( 21.05 KB )
  63. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/AutoWriteData.php ( 4.21 KB )
  64. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/Conversion.php ( 6.44 KB )
  65. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/DbConnect.php ( 5.16 KB )
  66. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/ModelEvent.php ( 2.33 KB )
  67. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/RelationShip.php ( 28.29 KB )
  68. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/contract/Arrayable.php ( 0.09 KB )
  69. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/contract/Jsonable.php ( 0.13 KB )
  70. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/contract/Modelable.php ( 0.09 KB )
  71. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Db.php ( 2.88 KB )
  72. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/DbManager.php ( 8.52 KB )
  73. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Log.php ( 6.28 KB )
  74. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Manager.php ( 3.92 KB )
  75. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/log/src/LoggerTrait.php ( 2.69 KB )
  76. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/log/src/LoggerInterface.php ( 2.71 KB )
  77. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Cache.php ( 4.92 KB )
  78. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/simple-cache/src/CacheInterface.php ( 4.71 KB )
  79. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper/Arr.php ( 16.63 KB )
  80. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/cache/driver/File.php ( 7.84 KB )
  81. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/cache/Driver.php ( 9.03 KB )
  82. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/CacheHandlerInterface.php ( 1.99 KB )
  83. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/Request.php ( 0.09 KB )
  84. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Request.php ( 55.78 KB )
  85. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/middleware.php ( 0.25 KB )
  86. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Pipeline.php ( 2.61 KB )
  87. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/TraceDebug.php ( 3.40 KB )
  88. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/middleware/SessionInit.php ( 1.94 KB )
  89. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Session.php ( 1.80 KB )
  90. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/session/driver/File.php ( 6.27 KB )
  91. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/SessionHandlerInterface.php ( 0.87 KB )
  92. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/session/Store.php ( 7.12 KB )
  93. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Route.php ( 23.73 KB )
  94. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleName.php ( 5.75 KB )
  95. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Domain.php ( 2.53 KB )
  96. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleGroup.php ( 22.43 KB )
  97. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Rule.php ( 26.95 KB )
  98. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleItem.php ( 9.78 KB )
  99. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/route/app.php ( 1.72 KB )
  100. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/Route.php ( 4.70 KB )
  101. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/dispatch/Controller.php ( 4.74 KB )
  102. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Dispatch.php ( 10.44 KB )
  103. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/controller/Index.php ( 4.81 KB )
  104. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/BaseController.php ( 2.05 KB )
  105. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/facade/Db.php ( 0.93 KB )
  106. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/connector/Mysql.php ( 5.44 KB )
  107. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/PDOConnection.php ( 52.47 KB )
  108. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Connection.php ( 8.39 KB )
  109. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/ConnectionInterface.php ( 4.57 KB )
  110. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/builder/Mysql.php ( 16.58 KB )
  111. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Builder.php ( 24.06 KB )
  112. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/BaseBuilder.php ( 27.50 KB )
  113. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Query.php ( 15.71 KB )
  114. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/BaseQuery.php ( 45.13 KB )
  115. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/TimeFieldQuery.php ( 7.43 KB )
  116. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/AggregateQuery.php ( 3.26 KB )
  117. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ModelRelationQuery.php ( 20.07 KB )
  118. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ParamsBind.php ( 3.66 KB )
  119. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ResultOperation.php ( 7.01 KB )
  120. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/WhereQuery.php ( 19.37 KB )
  121. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/JoinAndViewQuery.php ( 7.11 KB )
  122. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/TableFieldInfo.php ( 2.63 KB )
  123. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/Transaction.php ( 2.77 KB )
  124. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/log/driver/File.php ( 5.96 KB )
  125. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/LogHandlerInterface.php ( 0.86 KB )
  126. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/log/Channel.php ( 3.89 KB )
  127. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/event/LogRecord.php ( 1.02 KB )
  128. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/Collection.php ( 16.47 KB )
  129. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/View.php ( 1.70 KB )
  130. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/View.php ( 4.39 KB )
  131. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Response.php ( 8.81 KB )
  132. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/response/View.php ( 3.29 KB )
  133. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Cookie.php ( 6.06 KB )
  134. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-view/src/Think.php ( 8.38 KB )
  135. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/TemplateHandlerInterface.php ( 1.60 KB )
  136. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/Template.php ( 46.61 KB )
  137. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/template/driver/File.php ( 2.41 KB )
  138. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/template/contract/DriverInterface.php ( 0.86 KB )
  139. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/runtime/temp/067d451b9a0c665040f3f1bdd3293d68.php ( 11.98 KB )
  140. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/Html.php ( 4.42 KB )
  1. CONNECT:[ UseTime:0.000889s ] mysql:host=127.0.0.1;port=3306;dbname=f_mffb;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.001497s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.001441s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000693s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.001312s ]
  6. SELECT * FROM `set` [ RunTime:0.000714s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.001360s ]
  8. SELECT * FROM `article` WHERE `id` = 464712 LIMIT 1 [ RunTime:0.002155s ]
  9. UPDATE `article` SET `lasttime` = 1770531285 WHERE `id` = 464712 [ RunTime:0.022872s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 67 LIMIT 1 [ RunTime:0.000779s ]
  11. SELECT * FROM `article` WHERE `id` < 464712 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.001569s ]
  12. SELECT * FROM `article` WHERE `id` > 464712 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.001597s ]
  13. SELECT * FROM `article` WHERE `id` < 464712 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.002798s ]
  14. SELECT * FROM `article` WHERE `id` < 464712 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.003019s ]
  15. SELECT * FROM `article` WHERE `id` < 464712 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.002198s ]
0.134381s