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