laravel中moudle模块多很慢nwidart/laravel-modules有40个如何优化FileRepository的scan用php.ini缓存opcache
laravel中moudle模块多很慢nwidart/laravel-modules有40个如何优化以文件http://usr/local/php/etc/php.ini中开启以下配置zend_extensionopcache opcache.enable1 opcache.enable_cli0 opcache.memory_consumption256 opcache.interned_strings_buffer32 opcache.max_accelerated_files30000 opcache.max_wasted_percentage10 opcache.validate_timestamps0 opcache.revalidate_freq0 opcache.save_comments1检查apache的状态sudo /usr/local/apache/bin/httpd -t平滑重启 Apachesudo /usr/local/apache/bin/apachectl graceful速度提升了很多。之前接口要2-3秒现在基本在500ms以内。【注之后更新代码需要执行平滑重启命令】检查文件是否有开启成功。linux上直接生成该文件printf %s\n ?php header(Content-Type: application/json); echo json_encode([phpPHP_VERSION,sapiPHP_SAPI,opcachefunction_exists(opcache_get_status) ? opcache_get_status(false) : false]); public/opcache-check.php然后curl -s https://www.eip.com/opcache-check.php-----------------------以下作用不大--------------------------是由于每次请求都要扫码所有模块的所有文件找到根源文件后我们添加上缓存即可解决该问题速度提升1-2倍上代码\vendor\nwidart\laravel-modules\src\FileRepository.phppublic function scan() { // 添加静态缓存 - 就这4行代码 static $cachedModules null; if ($cachedModules ! null) { return $cachedModules; } $paths $this-getScanPaths(); $modules []; foreach ($paths as $key $path) { $manifests $this-getFiles()-glob({$path}/module.json); is_array($manifests) || $manifests []; foreach ($manifests as $manifest) { $name Json::make($manifest)-get(name); $modules[$name] $this-createModule($this-app, $name, dirname($manifest)); } } // 保存到静态变量 $cachedModules $modules; return $modules; }另为什么这样的方式起作用PHP不是每次请求都会重新刷新内存数据吗除非redisPHP-FPM 启动 ├── Worker 进程 1 │ ├── 请求1: scan() → 执行扫描静态变量 模块数据 │ ├── 请求2: scan() → 直接返回静态变量快速 │ └── 请求3: scan() → 直接返回静态变量快速 ├── Worker 进程 2 │ ├── 请求4: scan() → 执行扫描静态变量 模块数据 │ └── 请求5: scan() → 直接返回静态变量快速 └── ...结束

相关新闻

GeoGebra:从动态几何到全能数学实验室的深度解析与实战指南

GeoGebra:从动态几何到全能数学实验室的深度解析与实战指南

1. 项目概述:从“动态几何”到“全能数学实验室”如果你是一位数学老师,或者正在学习数学的学生,又或者是对数学可视化感兴趣的爱好者,那么“GeoGebra”这个名字你一定不陌生。它早已不是十年前那个单纯的“动态几何”软件了。今天…

2026/10/17 6:57:31 阅读更多 →
低代码集成!RPA 企业微信第三方 API,外部群主动调用快速落地

低代码集成!RPA 企业微信第三方 API,外部群主动调用快速落地

在企业数字化转型加速的当下,“想做自动化运营却缺技术团队、官方接口部署周期长、定制开发成本高”,成为很多企业在企业微信外部群运营中面临的核心困境。尤其对于中小微企业或非技术驱动型团队,即便深知 “外部群主动调用” 能提升私域效率…

2026/10/16 14:43:36 阅读更多 →
CTF竞赛逆向工程与电子取证工具全解析

CTF竞赛逆向工程与电子取证工具全解析

1. CTF竞赛工具全景图:从逆向工程到电子取证的装备库 作为一名打了七年CTF的老兵,我深刻体会到工具选型对比赛效率的直接影响。记得2019年某次线下赛,因为取证工具链配置不当,我们团队在文件恢复环节浪费了整整两小时。本文将系统…

2026/10/10 8:11:58 阅读更多 →

最新新闻

Fiddler 安装与 HTTPS 抓包配置全指南:版本选择、证书信任与移动端调试

Fiddler 安装与 HTTPS 抓包配置全指南:版本选择、证书信任与移动端调试

简介:Fiddler是一款由Telerik开发的HTTP协议抓包与调试代理工具,面向开发者、测试人员及需要排查网络问题的用户,可帮助分析请求响应、定位接口异常与页面加载瓶颈。本资源为Fiddler下载包,采用7z压缩格式,共包含90个文…

2026/10/17 6:58:02 阅读更多 →
Java Web购物商城项目实战:Servlet+JSP+MySQL完整开发与部署

Java Web购物商城项目实战:Servlet+JSP+MySQL完整开发与部署

简介:一份基于JSP和Servlet的JavaWeb购物商城项目,面向初学JavaWeb的学生或需要快速搭建电商原型的开发者,覆盖用户注册登录、商品分类浏览、购物车商品数量修改、订单提交与状态跟踪以及管理员后台等典型功能。资源压缩包共270个文件&#x…

2026/10/17 6:58:01 阅读更多 →
VC2008 MFC老项目窗口切换:CTabSheet封装Tab控件实战

VC2008 MFC老项目窗口切换:CTabSheet封装Tab控件实战

简介:这份资源面向在 VC2008 环境下使用 MFC 开发桌面程序的初学者与中级开发者,聚焦于用 CTabSheet 类实现多选项卡窗口界面这一常见需求。CTabSheet 是对 Windows TabCtrl 控件的封装,配合 CPropertySheet 可快速搭建类似浏览器标签页的对话…

2026/10/17 6:58:01 阅读更多 →
KITTI 点云可视化实战:从 bin 读取到图像投影对齐

KITTI 点云可视化实战:从 bin 读取到图像投影对齐

简介:这份资源面向计算机视觉与自动驾驶方向的学习者,尤其是需要处理KITTI数据集点云与图像数据的开发者,提供了一套可直接运行的可视化工具集。包内共42个文件,以Python脚本、Jupyter Notebook、PNG效果图、TXT与XML标注文件为主…

2026/10/17 6:58:01 阅读更多 →
Unity Shader手写Phong光照模型实战指南

Unity Shader手写Phong光照模型实战指南

1. 项目概述:为什么一个“老古董”光照模型 still 值得你亲手写一遍Phong光照模型不是什么新概念——它诞生于1975年,比绝大多数Unity开发者入行时间都早。但如果你打开Unity官方Shader Graph,点开任何一个Lit节点,往底层扒一扒生…

2026/10/17 6:58:01 阅读更多 →
Vue3+Node.js 从零搭建企业级能耗监测管理系统(多租户架构 完整落地实战)

Vue3+Node.js 从零搭建企业级能耗监测管理系统(多租户架构 完整落地实战)

一、前言很多工业厂区、产业园区、商业物业都会遇到能耗管理的痛点:人工抄表费时费力还容易出错、能耗数据滞后没法及时发现跑冒滴漏、想做节能改造却没有数据支撑、环保合规上报缺完整台账。 市面上成熟的工业能耗平台动辄十几万起,定制周期长&#xff…

2026/10/17 6:57:01 阅读更多 →

日新闻

DeepSeek选型与部署:V3/R1、Ollama、API全攻略

DeepSeek选型与部署:V3/R1、Ollama、API全攻略

简介:《DeepSeek使用方法.pdf》是一份面向DeepSeek入门及进阶用户的完整使用指南,重点围绕V3与R1两款模型的能力差异与适用场景展开,帮助读者根据任务类型与成本选择合适的模型。资源共1个PDF文件,压缩包大小约311KB,篇…

2026/10/17 0:00:25 阅读更多 →
200+Deepseek润色指令拆解:从底层原理到场景落地的完整指南

200+Deepseek润色指令拆解:从底层原理到场景落地的完整指南

简介:这是一份聚焦DeepSeek提示词优化的《200Deepseek润色指令》PDF文档,共收录两百余条可直接套用的润色指令,涵盖语法修正、风格统一、逻辑梳理、表达精炼等维度,并针对商务写作、学术论文、广告文案等场景给出差异化建议。文档…

2026/10/17 0:00:25 阅读更多 →
OpenCV轮廓法物体计数系统:轻量、可控、可落地的工业级实现

OpenCV轮廓法物体计数系统:轻量、可控、可落地的工业级实现

简介:本资源是一份基于OpenCV的本科课程设计完整报告,面向计算机视觉初学者、图像处理学习者及高校通信/信息类专业学生,解决物体智能计数与检测结果结构化记录的实际问题。项目覆盖图像预处理、轮廓检测、边界框绘制、轨迹栏交互式参数调节、…

2026/10/17 0:00:25 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/16 21:35:51 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/17 1:44:59 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/16 15:04:24 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/16 21:54:38 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/16 3:49:43 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/16 14:23:36 阅读更多 →