首頁 > 後端開發 > php教程 > PHP的Phar套件原來效能這麼強

PHP的Phar套件原來效能這麼強

藏色散人
發布: 2023-04-07 20:28:01
轉載
2945 人瀏覽過

之前有在群組裡看到人說,有些 Swoole 框架啟動速度慢,尤其是掛載的網路硬碟下運作尤其的慢。

我想,由於 Swoole 可以讓 PHP 應用實現常駐內存,所以啟動時候勢必要掃描和加載許多文件,這應該是導致啟動速度慢的罪魁禍首。

想到 php 還有 phar 包這個東西,我試著用 phar 來解決這個問題。功夫不負有心人,我終於為imi框架實現了phar 打包的兼容和支持,測試結果表明:

使用Phar 進行文件枚舉、讀取、include,無論是在本地硬碟還是Samba 等網絡檔案共享掛載,效能都比零散的檔案效能更強。

phar 作用強大,可以直接用一個套件來部署項目,但在傳統 php 應用開發裡 phar 其實並不受歡迎,因為沒有太多好處。而在Swoole環境下,越來越多的框架支援常駐內存,可以在啟動時載入完想要用的檔案。

phar 從 php 5.3.0 開始就已經內建支持,所以相容性不需要擔心,也不需要安裝額外的擴充功能。

我特意為此寫了一個測試 Phar 檔案枚舉、讀取、include 效能的 Demo:

https://gitee.com/yurunsoft/PharTest
登入後複製

有興趣的朋友可以拉下來,自己跑一下試試看。

想要啟動Phar 檔案打包功能,首先要在php.ini 中設定phar.readonly = Off

Phar 打包程式碼主要如下:

<?php
$fileName = __DIR__ . &#39;/test/test.phar&#39;;
if(is_file($fileName))
{
    unlink($fileName);
}
$phar = new Phar($fileName);
$phar->stopBuffering();
$phar->buildFromDirectory(__DIR__ . &#39;/src&#39;);
登入後複製

實際應用程式複雜,可以參考php 官方文檔,依實際情況略作修改。

以上是PHP的Phar套件原來效能這麼強的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
php
來源:segmentfault.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新問題
怎麼學好php
來自於 1970-01-01 08:00:00
0
0
0
PHP擴充intl
來自於 1970-01-01 08:00:00
0
0
0
php數據獲取?
來自於 1970-01-01 08:00:00
0
0
0
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板