【发布时间】:2020-10-07 12:45:12
【问题描述】:
我们开发了基于 Laravel 的软件,并使用 Laravel Valet 进行了本地测试,一切正常。一个安装在具有完全相同的数据库和代码的登台(直接管理员)网络服务器上,内存使用量急剧增加。
本地测试规范: 操作系统:MacOS Catalina 处理:2.3 GHz 8 核 Intel Core i9 内存:16 GB 2667 MHz DDR4
暂存服务器规格: 操作系统:CentOS 7.0 64 位 处理器速度 (MHz) 2693.670 总内存 1014728 kB
这是一个基本的静态页面:
Staging server: 21MB, PHP 7.4.2
Development machine: 5MB, PHP 7.4.4
另一个更大的页面(需要优化):
Staging server: 101MB, PHP 7.4.2
Development machine: 85MB, PHP 7.4.4
我们知道这台开发机器要慢很多,但我们无法解释内存使用量的增加。有人知道如何分析和解决这个问题吗?
使用的框架是 Laravel v6.18.20
【问题讨论】:
-
首先要仔细检查的是您是否遵循了部署 Laravel 应用程序的指南(可在此处找到:laravel.com/docs/6.x/deployment)看起来您使用的是不同版本的 PHP。我很好奇内存使用差异是否在 7.4.2 和 7.4.4 之间。
-
已尽可能遵循部署程序。同样在本地,这还没有完成,这正在使用更少的内存。我真的无法想象这个版本差异在内存使用方面会发生如此大的变化。在这种情况下,新版本会更糟......
-
我的第一个猜测建议是比较您在每个系统上用于 PHP 和 Apache/Nginx 的扩展和模块。这些会严重影响内存使用。考虑到两个示例中内存使用量的差异为 16 MB,这似乎是一个可能的原因。要检查的另一件事是缓存设置或可能受
.env设置影响的其他内容。
标签: php laravel memory laravel-valet directadmin