尧图网络科技YAOTU DIGITAL 获取报价
获取报价
首页 / 资讯中心 / 文章详情

laravel中moudle模块多很慢nwidart/laravel-modules有40个如何优化FileRepository的scan用php.ini缓存opcache

发布时间:2026/9/7 18:36:27

资讯中心
01
ARTICLE

laravel中moudle模块多很慢nwidart/laravel-modules有40个如何优化FileRepository的scan用php.ini缓存opcache

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() → 直接返回静态变量快速 └── ...结束
02
RELATED NEWS

相关资讯

更多网站建设与数字化升级内容

03
WHY YAOTU

想打造同款高转化官网?

懂行业、懂生意,从建站到增长一站式陪跑

场景化定制

不做模板站,围绕你的业务场景量身设计,小众不撞款。

营销型架构

以转化目标组织内容与路径,让官网真正带来询盘。

全周期服务

设计、开发、运营、运维一体,上线只是开始。

免费获取你的建站方案

留下需求,专属顾问 24 小时内为你输出方案建议。