Laravel 是很是现代化的一套 PHP 框架, 基于 composer 的构建方式, 其不少核心依赖并不是彻底 Laravel 本身所维护, 而依赖于 symfony/http-, eloquent/ 等较成熟的 Library, 以此实现现代化框架的集众优于一身(站在巨人肩上)的特色.php
通过前面的了解, 咱们已经知道 Swoole 给 PHP 带来的无可比拟的优点, 但由于 Swoole 一些局限, 咱们没法将其直接用于成熟的 PHP 框架, 而须要进行部分改造方可在 Swoole 上运行. 而 LaravelFly 正是这样一款工具(or, you can call it something else, anyway).laravel
好了, 下面咱们开始操做吧.shell
先来新建一个全新的 Laravel数据库
# Composer 下载 Laravel 安装包: composer global require "laravel/installer" # 新建项目 laravel new test cd test/ composer update cp .env.example .env vim .env # 修改数据库配置 php artisan key:generate php artisan serve
这时咱们经过 http://localhost:8000 就能够访问这份新的 laravel 项目了vim
但咱们还得继续往下app
composer require "scil/laravel-fly":"dev-master" vendor/bin/publish-laravelfly-config-files vim app/Http/Kernel.php ######################################### # class Kernel extends HttpKernel # --> # # # if (defined('LARAVELFLY_GREEDY')) { # if (LARAVELFLY_GREEDY) { # class WhichKernel extends \LaravelFly\Greedy\Kernel { } # } else { # class WhichKernel extends \LaravelFly\Kernel { } # } # } else { # class WhichKernel extends HttpKernel { } # } # # class Kernel extends WhichKernel # vendor/bin/start-laravelfly-server
好了, 咱们的 laravel 项目如今是在 Swoole 扩展上运行了, 几乎没有什么 bug, 不过, 通过测试发现 debugbar 有些许问题, debugbar 调试过程记录的查询历史不会在请求完成后清空, 而会继承到下一次请求, 这实际上是 Swoole 并不会在每次请求完成后回收建立的资源, 而咱们只须要在 config/laravelfly.php 声明须要在单次请求完成后回收的实例便可.composer