乐于分享
好东西不私藏

软件开发中那些"测试"和"发布"的方法,一文讲透

软件开发中那些"测试"和"发布"的方法,一文讲透

最近在一次故障处理中,又看到了耳熟能详的“灰度”,今天就系统的整理一下:灰度、冒烟、金丝雀、蓝绿……每个都听过,但好像又没完全搞懂它们之间的区别。这篇文章用大白话把常见的方法全部讲一遍,保证看完能用你自己的话讲给别人听。


一、先搞清楚:测试和发布,是两件事

很多人容易把"测试方法"和"发布策略"混在一起说,虽然它们经常配合使用,但本质上不是一回事:

  • 测试方法:回答的是"我怎么验证代码是对的"
  • 发布策略:回答的是"我怎么把新版本安全地推到线上,让用户用到"

下面按类别来讲。


二、测试方法类

1. 单元测试(Unit Test)—— 测一个零件

类比:汽车出厂前,单独测试发动机的转速、油耗。这只是发动机本身,不涉及整车。

在代码里:一个函数、一个方法,给定输入,检查输出是否如预期。

defadd(a, b):return a + b# 单元测试assert add(12) == 3assert add(-11) == 0

特点:最底层、最快、发现问题最早。


2. 集成测试(Integration Test)—— 测零件之间的配合

类比:发动机装到车上后,测试发动机和变速箱能不能配合工作。

在代码里:两个模块之间有交互,比如你的代码调用了数据库接口,或者调了另一个微服务,测它们能不能正常"对话"。

特点:比单元测试慢,但能发现模块间接口的问题。


3. 端到端测试(E2E Test)—— 模拟真实用户走完全流程

类比:4S店把车开到实际路面上,模拟真实驾驶,看看有没有问题。

在代码里:启动完整应用,模拟用户操作——点按钮、填表单、提交订单,从前端一直跑到后端数据库,验证完整链路是否通畅。

特点:最接近真实用户场景,但慢、维护成本高,通常用例不会太多。


4. 冒烟测试(Smoke Test)—— 快速确认"能跑起来"

类比:新房子装修完,先开一下灯、开水龙头,看看有没有根本没通电、断水这种低级问题。不做深度检查,只是"冒个烟试试"。

在代码里:上线前用最少量、最核心的用例跑一遍,确认系统没有明显的崩溃或死循环。如果冒烟测试都过不了,后面深入的测试根本不用做。

特点:非常快,通常5-10分钟搞定,起到"门卫"作用。


5. 回归测试(Regression Test)—— 确保改代码没破坏老功能

类比:换了发动机火花塞,要确认空调、音响、雨刷这些原有功能没被影响。

在代码里:每次代码改动后,把历史积累的所有测试用例跑一遍,确保新代码没有破坏已有的功能。

特点:用例多、耗时长,通常靠自动化脚本来做。


6. 压力测试(Stress Test)—— 看极限在哪

类比:给汽车发动机持续拉到8000转,看它什么时候爆缸。

在代码里:用超出正常负载的请求量来压系统,看它什么时候扛不住,是内存先爆、还是CPU先满、还是数据库连接数先耗尽。

特点:找出系统的性能上限和薄弱环节。


7. 性能测试(Performance Test)—— 验证速度达不达标

类比:同样跑100公里,耗油量、耗时是否在厂家承诺的范围内。

在代码里:在正常负载下,测响应时间、吞吐量(QPS/TPS)是否满足产品要求的性能指标。

特点:关注的是"性能指标是否达标",不一定非要把系统压到极限。


8. 浸入测试(Soak Test)—— 长时间高负载稳不稳

类比:让汽车连续跑72小时不停,看看机油会不会异常消耗、发动机会不会过热。

在代码里:用接近正常负载的请求,持续跑几小时甚至几天,观察系统是否存在内存泄漏、缓存污染、连接池耗尽等长时间运行才会暴露的问题。

特点:发现问题最隐弊,但测试周期长。


9. 契约测试(Contract Test)—— 微服务之间的"合同"是否履约

类比:甲方和乙方签了合同(接口文档),甲方提供一个查询接口,乙方调用它。双方都要验证对方是否按合同办事。

在代码里:微服务时代,A服务和B服务通过HTTP互相调用。如果A改了接口但B不知道,就会出问题。契约测试就是分别验证"接口提供方"是否按约定输出、"接口调用方"的请求是否符合约定。

特点:不需要搭建完整微服务环境,测试成本低,适合快速迭代的团队。


10. 探索性测试(Exploratory Testing)—— 自由发挥找bug

类比:新车试驾时不按说明书来,专门找边界操作——油门踩到底、急刹车、过减速带……看看有没有异常。

在代码里:测试人员不按固定用例,凭经验、直觉和对系统的理解,主动探索边界条件、异常输入、并发场景等。

特点:依赖测试人员的经验和判断,能发现很多自动化用例漏掉的意外问题。


三、发布策略类

1. 蓝绿部署(Blue-Green Deployment)—— 两套环境来回切换

类比:你有一把备用钥匙(A钥匙是蓝色,B钥匙是绿色)。新配了一把B钥匙(新版),先试试好不好使,好使了就换成B,蓝色那把收起来备用。下次发版就反过来操作。

在代码里

[蓝环境:v1 在线] ← 用户流量[绿环境:v2 待上线]确认 v2 没问题 → 一键切换 →[蓝环境:v1 备用][绿环境:v2 在线] ← 用户流量

优点:切换是瞬间的,回滚也是瞬间的(切回蓝环境即可)缺点:需要两套完整环境,资源成本翻倍


2. 金丝雀发布(Canary Release)—— 先派一只金丝雀探探路

类比:矿工下矿井前,先放一只金丝雀进去探路。如果金丝雀还活着,说明空气安全;如果金丝雀倒了,说明有毒气,就不进人了。

在代码里:新版上线时,先只让少量用户(比如5%)流量跑新版本,观察错误率、响应时间等指标。如果数据正常,再逐步扩大比例(10% → 30% → 50% → 100%)。

优点:风险可控,新版本问题只影响少量用户缺点:需要完善的金丝雀监控系统,看数据判断是否继续升级


3. 滚动发布(Rolling Deployment)—— 逐台替换

类比:一个车队有10辆公交车,换新车时,不是一次性全部换,而是一辆一辆换——先把1号车换成新版,继续运营,再换2号……始终有车在跑。

在代码里:集群中有一批实例(Pod/VM),按批次(比如每批1个)逐个更新。旧实例下线 → 新实例上线 → 继续下一批,直到全部更新完毕。

优点:不需要额外环境资源,机器利用率高缺点:滚动过程中,新旧版本同时运行,可能有兼容性问题;回滚相对慢


4. 红黑部署 —— 云时代的蓝绿

类比:类似蓝绿,但"红"是主环境,"黑"只在发布时临时扩容。发布时扩容"黑"(跑新版本),流量切过来后,"红"直接缩容销毁。

特点:利用云厂商的弹性扩容能力,环境资源只在发布时临时占用,成本更低。


5. 影子测试(Shadow Mode)—— 悄悄试,不影响用户

类比:一个演员在后台排练新剧本,同时旧剧本还在正式演出。演员按新剧本演一遍,但结果只给自己看,不给观众。用来验证新剧本能不能用。

在代码里:生产流量同时发送到新旧两个版本。新版本收到请求、处理了,但结果不返回给用户,只有后台记录。用来验证新版本在实际流量下的行为。

优点:完全不影响用户,风险极低缺点:资源消耗大(新旧版本同时跑),且新版本的写操作需要额外处理(否则会产生脏数据)


6. 特性开关(Feature Flag)—— 线上随时开关功能

类比:大楼里每层都有一个总闸,可以单独关掉某一层的电,不影响其他楼层。新功能上线后,可以在后台随时"关掉"某个功能,而不需要重新部署代码。

在代码里:在代码里埋一个开关(配置项),控制某个功能是否对用户可见。上线后如果发现问题,后台改配置开关,新版本功能立即消失,不用发版回滚。

优点:灵活控制功能可见性,快速响应线上问题,适合长期灰度缺点:代码里多了一层逻辑,复杂度增加


7. 流量镜像(Traffic Mirroring)—— 流量复制到新版本

类比:电视台试播时,把同样的节目信号同时发给测试接收器和普通家庭。普通家庭看到的是旧节目,测试接收器看的是新节目。新节目验证没问题后,再统一切换。

在代码里:生产请求在转发给旧版本的同时,复制一份发给新版本。新版本同样处理,但结果不返回给用户。用来在真实流量下验证新版本。

特点:和影子测试类似,区别在于流量镜像通常在七层负载均衡(如 ingress)层面做,对代码无侵入。


四、产品决策类

A/B 测试 —— 哪个方案更好,让数据说话

类比:餐厅推出新菜品,让一半顾客试吃新菜,一半顾客吃老菜,最后看哪份好评多、回头率高,来决定是否上新菜。

在代码里:同一时间,把用户流量按比例(比如50% vs 50%)切到 A/B 两个版本,收集用户行为数据(点击率、转化率、留存率等),用数据判断哪个方案更好。

和金丝雀的区别

  • 金丝雀是为了安全发布,比例通常是"小流量新版本",核心是控制风险
  • A/B 测试是为了产品决策,两个版本都是正式的,核心是收集数据验证假设

五、易混淆概念对比

组合
本质区别
金丝雀 vs 灰度
灰度是一个大类概念(渐进式发布),金丝雀是灰度的一种具体方式
蓝绿 vs 滚动发布
蓝绿是两套环境秒级切换,滚动是逐台替换速度慢;蓝绿资源翻倍但回滚快
影子测试 vs 流量镜像
两者都是"不直接影响用户"的方式,影子在代码层面做,流量镜像在负载均衡层面做
冒烟 vs 回归
冒烟是"快速确认能跑",回归是"确认历史功能没坏";冒烟用例少,回归用例多
压力测试 vs 性能测试
压力测试是"压到极限找崩溃点",性能测试是"在正常负载下验证是否达标"
单元测试 vs 集成测试
单元测单个函数,集成测模块间配合;单元快,集成慢

六、实操建议:团队在不同阶段用什么

项目初期(快速迭代):单元测试 + 冒烟测试 + 集成测试,发布用蓝绿或滚动

微服务架构(规模中等):单元 + 集成 + E2E,配合特性开关 + 金丝雀发布

大规模高可用系统:完善的金丝雀 + A/B 测试 + 影子测试,发布前有完整的自动化测试流水线

金融/医疗等高可靠性系统:全链路自动化测试 + 压力测试 + 浸入测试,发布用蓝绿或红黑,灰度比例逐步放量


七、一句话总结

  • 单元测试:测一个零件
  • 集成测试:测零件之间能不能配合
  • E2E 测试:模拟用户走完全流程
  • 冒烟测试:快速确认"能跑起来"
  • 回归测试:确认改代码没破坏老功能
  • 压力测试:压到极限找崩溃点
  • 性能测试:验证速度达不达标
  • 浸入测试:长时间运行稳不稳
  • 契约测试:微服务间接口"合同"是否履约
  • 探索性测试:自由发挥找边界 bug
  • 蓝绿部署:两套环境秒级切换
  • 金丝雀发布:小流量探路,逐步放量
  • 滚动发布:逐台替换,无需双倍资源
  • 影子测试:悄悄试,不影响用户
  • 特性开关:线上随时开关功能
  • 流量镜像:流量复制到新版本验证
  • A/B 测试:哪个方案好,让数据说话

希望看完这篇文章,下次听到"灰度发布"或"金丝雀"的时候,你能用自己的话说出来,而不只是停留在"听说过"这个层面。

基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-04-19 18:22:33 HTTP/1.1 GET : https://www.yeyulingfeng.com/a/538096.html
  2. 运行时间 : 0.100757s [ 吞吐率:9.92req/s ] 内存消耗:4,729.00kb 文件加载:145
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=75c9e6cf39a04203ff1de0e8dba6fd8a
  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.000561s ] mysql:host=127.0.0.1;port=3306;dbname=wenku;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.000767s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.000341s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000282s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.000524s ]
  6. SELECT * FROM `set` [ RunTime:0.000238s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.000610s ]
  8. SELECT * FROM `article` WHERE `id` = 538096 LIMIT 1 [ RunTime:0.003438s ]
  9. UPDATE `article` SET `lasttime` = 1776594154 WHERE `id` = 538096 [ RunTime:0.003307s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 64 LIMIT 1 [ RunTime:0.000249s ]
  11. SELECT * FROM `article` WHERE `id` < 538096 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.000468s ]
  12. SELECT * FROM `article` WHERE `id` > 538096 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.000522s ]
  13. SELECT * FROM `article` WHERE `id` < 538096 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.001408s ]
  14. SELECT * FROM `article` WHERE `id` < 538096 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.000897s ]
  15. SELECT * FROM `article` WHERE `id` < 538096 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.006209s ]
0.102420s