【发布时间】:2016-07-14 12:49:36
【问题描述】:
我使用的是 Laravel 4.2,当我浏览页面时,PHP-FPM 飙升至 10-20%。
我在 2 个环境中进行了检查:
答:
Nginx 平衡器 - 2 个 CPU,2GB。
PHP-FPM 服务器 - 1 个 CPU,1GB。
MySQL 服务器 - 2 个 CPU,2GB。
乙:
1 个 CPU,1GB 的 linode 上的简单 VPS。
*所有服务器上的 SSD。
现在,我开始使用 JMeter 对其进行更深入的调查:
JMeter 设置:
Number of Threads(users) - 100.
Ramp-Up Period(in seconds) - 1.
Loop Count - 5.
-
Laravel 4.2,将请求发送到:
Route::get('/test', function() { 回声“测试”; });
结果:100% 的 CPU 大约需要 40 秒。
Laravel 5.2(全新安装),将请求发送到欢迎页面。
结果:CPU 使用率 100% 持续 20 秒。Phalcon(全新安装):将请求发送到 Hello world 页面。
结果:CPU 使用率为 50%,持续 2 秒。-
Codeiginiter(rest api server, same config):将请求发送到从数据库加载数据的页面(返回 JSON)。
结果:CPU 使用率在 55%-60% 上持续 3 秒。- 两种环境的结果相同。
- 禁用调试模式、数据库连接、更改配置等。
PHP-fpm 配置:
pm.max_children = 9
pm.start_servers = 3
pm.min_spare_servers = 2
pm.max_spare_servers = 4
我知道 Laravel 应该更慢,但我怀疑差异应该那么大? 我用谷歌搜索了几个小时,我遇到了一些与我的问题相同但没有任何解决方案的帖子:
http://laravel.io/forum/09-25-2014-what-steps-should-i-take-to-reduce-laravels-high-cpu-load
http://laravel.io/forum/08-12-2014-cpu-load-general-performance-question
我在这里错过了什么?
提前致谢。
【问题讨论】:
-
所以你优化了 laravel
php artisan optimize和 composercomposer dump-autoload --optimize? -
您是否使用 Forge 进行配置?
-
我还遇到了简单的“hello world”应用程序的 cpu 使用率 100% 问题。有解决办法吗?
-
@CP-Soni 不,我已经停止在大型项目中使用 Laravel,并且基本上开发了我自己的框架,该框架基于我自己的需要的 slimframework。不过,试试 Kurucu 的建议,说不定对你有用。
-
你检查过 Laravel 是在
dev还是prod环境下运行的?
标签: php laravel laravel-4 laravel-5