优化 Laravel 框架加载慢的问题

小蒋2026-06-04 16:50:56

一个简单的 Laravel 应用,启动阶段可能需要加载 300~500 个 PHP 文件,耗时 0.3~0.8 秒

为什么 Swoole 能解决?

核心原理:Swoole 在启动时一次性完成所有文件的加载和初始化,后续请求只是“唤醒”已经存在于内存中的对象,因此省去了那文件加载时间。

进入网站根目录

安装依赖包

composer require swooletw/laravel-swoole

加上 注册服务提供者(config/app.php的 providers  里面)

SwooleTW\Http\LaravelServiceProvider::class,

发布配置文件

php artisan vendor:publish --provider="SwooleTW\Http\LaravelServiceProvider"

打开 config/swoole_http.php,至少配置以下几项:

// 监听地址:默认只能本机访问,如需外网访问改为 '0.0.0.0'

'host' => '0.0.0.0',

// 监听端口:确保未被占用(如 1215)

'port' => '1215',

启动 Swoole HTTP 服务器

php artisan swoole:http start

验证访问(防火墙注意一下)

  1. 本机测试curl http://127.0.0.1:1215

  2. 外网访问http://你的服务器公网IP:1215

实施这些优化后

  • 响应时间:从 0.5+ 秒降到 0.1 秒以内


重要提醒:

  • 修改代码后:Swoole 服务器常驻内存,修改控制器、模型等业务代码后,必须重启服务才能生效(php artisan swoole:http restart)。但视图文件(.blade.php)支持自动重载。

曝光6098浏览316互动1