首頁  >  文章  >  後端開發  >  快看!能讓PHP程式加速的好東西「Roadrunner」來了!

快看!能讓PHP程式加速的好東西「Roadrunner」來了!

藏色散人
藏色散人轉載
2021-10-15 15:32:233857瀏覽

快看!能讓PHP程式加速的好東西「Roadrunner」來了!

最近發表了 Laravel Octane 包(https://github.com/laravel/octane)。它的創建使 Laravel 對 Swoole 和 RoadRunner 更加友好。我們在  dev.family 中使用 RoadRunner 而不是 php-fpm 已經有一段時間了, 我們決定分享我們的經驗並揭示它具有什麼優勢。

RoadRunner 是一個用 Go 寫的高效能、開源的 PHP 應用程式伺服器。與 php-fpm 的主要區別在於 RoadRunner 與 php 的常駐進程交互, 不像 php-fpm, 會在每次請求時創建並殺死一個新的 php 進程。 【推薦:PHP影片教學

#常駐程式的優點:

  • 沒有時間浪費在啟動上
  • 沒有時間花費在創建資料庫的連接上
  • 在進程中直接使用記憶體快取的能力

這種方法的缺點是,它並不適合所有PHP 應用程序,因為通常在編寫程式碼時,會考慮到PHP 進程在請求之後會終止。因此,您需要能夠監視記憶體洩漏,並仔細處理全域狀態。因此,遺留項目可能無法在Roadrunner 上啟動。

然而,Roadrunner 還有其他有用的功能,例如靜態回饋、回應壓縮和平衡。典型捆綁包的功能都落在了 nginx 上。如果你使用的是 PHP Roadrunner,則可以在沒有它的情況下啟動該應用程式(nginx)。

RoadRunner 也很容易擴充。您可以將其元件用於您自己的應用程式伺服器並獲得機會,例如,您可以使用 websockets 直接在 Go 上處理一些請求。

RoadRunner 本身不是一個新的開發項目,它已經有幾年的歷史了。但是,有了 Laravel Octane 的官方支持,您可以確定框架已經準備好使用它。

我們在一個真實的專案上做了一個小測試,比較了 php-fpm 和 roadrunner 的速度。結果如下:

php-fpm:
plain text: 1150 RPS
single query: 530 RPS

roadrunner:
#plain text: 2200 RPS
single query: 1600 RPS

plain text -- 傳回常數JSON 的查詢
single query -- 將傳回常數JSON 的查詢

single query

 -- 將單一查詢的結果以JSON 格式返回資料庫的查詢

速度有顯提高,這是由於缺乏啟動時間和使用了與資料庫的永久連接。

原文網址:https://dev.to/dev_family/roadrunner-here-and-now-2oo9
###翻譯網址:https://learnku.com/php/ t/61447######

以上是快看!能讓PHP程式加速的好東西「Roadrunner」來了!的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:learnku.com。如有侵權,請聯絡admin@php.cn刪除