如何經過swoole加速laravel的問題?

這篇文章主要介紹了關於如何使用swoole加速laravel,有着必定的參考價值,如今分享給你們,有須要的朋友能夠參考一下php

 

再來複習一下吧,致使 php 慢的各類因素中解析性語言的特性能夠說是罪魁禍首,再加上,每次請求完都釋放請求時所加載的所有文件,所以也就顯得更慢了。laravel

後來咱們有了 opcache,使用這個的話,請求時間大概會縮短到原來的一半,可是咱們會發現其實花的時間看起來仍是不少。數據庫

這是爲何呢?緣由在於,opcache 只是省去了解析文件的時間,實際運行的時候,咱們仍是須要去把相同的代碼又跑一遍,具體咱們能夠看下圖:ubuntu

咱們假設一下,若是咱們的代碼跑了一遍,不釋放的話,那麼下次再跑的時候不就能夠節省了這重複的時間?的確是的。數組

下面開始正題:

一、安裝 laravel-swoole 擴展swoole

 

1app

composer require swooletw/laravel-swoolecomposer

二、swoole 擴展固然是必不可少的ide

 

1測試

pecl install swoole

 

  須要在安裝完 swoole 擴展以後加到 php.ini 中,不贅述

三、在 config/app.php 服務提供者數組添加該服務提供者:

 

1

SwooleTW\Http\LaravelServiceProvider::class,

四、如今,你能夠執行如下的命令來啓動 Swoole HTTP 服務。

 

1

php artisan swoole:http start

ab 測試

測試環境:ubuntu 18.04,4核8線程 2.7~3.5GHz cpu,8G內存,120G SSD

測試結果:

ab參數:ab -n 1000 -c 100

咱們發現 Time per request 是 2.512ms,固然,這只是一個簡單的請求,不涉及數據庫查詢。總的來講,表現是要比 opcache 要好的,但這個畢竟是野路子,有多少坑咱們不得而知,目前也不太瞭解是否有把這個用於生產環境的,可是這個思路其實真的很不錯,最後期待一下 php 官方把這個做爲研究方向

相關文章
相關標籤/搜索