PharファイルはPHPファイルを、単一のファイルにパッケージのすべてを使用することができ、サイトは非常に簡単に展開することです。しかし、単一のファイルには、動作速度を向上させるためにPHPキャッシュ(バイトコードキャッシュ)、PHP opcache使用することができます。まだキャッシュを使用するには、どのようにパッケージPHARはそう。
これは、設定する必要があります(php.iniの)
phar.cache_list
マニュアルで説明しました:
マッピングのPharアーカイブは非常に近い伝統的なディスクベースのインストールからこれらのファイルを実行しているの速度にpharアーカイブが不足してファイルをもたらすパフォーマンスの改善を提供する、Webサーバの起動時に事前に解析することができます。
事前分析は、従来のディスクベースのインストール・ファイルから非常に近い速度を実行するので、ファイルpharアーカイブすることを、それによって改善された性能を提供し、Webサーバの起動時にpharアーカイブをマッピングすることができますスピードを実行します。
この機能は、サポートに始めたのphar 2.0.0で利用可能です。もちろん、PHPの現在のインストールは、あなたが2以上であること。phar 2.0.0リリース日は2009年7月29日です。手動設定手順。
php.iniの#に(窓があること):
pharcachelist = C:\ phar1phar \へ\のパス; C:\ \ phar2pharのに\のパス
(UNIX)にphp.iniの#:
pharcachelist = /パスについて/ / phar1.phar:/path/to/phar2.phar
セミコロンを使用して複数のファイル上のWindows、Linux上でコロン。
あなたはcache_list、(おそらくまたはApache)再起動のphp-FPMを有効にしたら。
(php.iniの)opcacheが有効になっていることを確認します。
opcache.enable = 1
それでは、どのように影響しますか?私NILCMSフレームワークでテストを行います。環境:
PHP 7.2.25
nginxの1.14.2
CentOSの1908年7月7日
テストコマンドは:500 -c 5ドメイン-n AB
1.opcache有効になっていない、cache_listが設定されていません
同時実行レベル:5
のテストにかかった時間:7.665秒
完全な要求:500の
失敗した要求:0
合計転送:110500バイト
HTMLは転送:21000バイト
毎秒要求:65.23 [#/秒](平均)
の要求あたりの時間:76.648 [ミリ秒] (平均)
リクエスト当たりの時間:15.330 [ミリ秒](平均、すべての同時要求を横切って)
転送速度:14.08 [バイト/秒]受信
2.opcacheはcache_listが設定されていない、有効
同時実行レベル:5
のテストにかかった時間:1.406秒
完全な要求:500の
失敗した要求:0
合計転送:110500バイト
HTMLは転送:21000バイト
毎秒要求:355.62 [#/秒](平均)
の要求あたりの時間:14.060 [ミリ秒] (平均)
リクエスト当たりの時間:2.812 [ミリ秒](平均、すべての同時要求を横切って)
転送速度:76.75 [バイト/秒]受信
3.opcache、cache_listの設定を有効にしていません
同時実行レベル:5
のテストにかかった時間:7.588秒
完全な要求:500の
失敗した要求:0
合計転送:110500バイト
HTMLは転送:21000バイト
毎秒要求:65.89 [#/秒](平均)
の要求あたりの時間:75.881 [ミリ秒] (平均)
リクエスト当たりの時間:15.176 [ミリ秒](平均、すべての同時要求を横切って)
転送速度:14.22 [バイト/秒]受信
4.opcacheは、cache_listの設定を有効に
同時実行レベル:5
のテストにかかった時間:1.312秒
完全な要求:500の
失敗した要求:0
合計転送:110500バイト
HTMLは転送:21000バイト
毎秒要求:381.01 [#/秒](平均)
の要求あたりの時間:13.123 [ミリ秒] (平均)
リクエスト当たりの時間:2.625 [ミリ秒](平均、すべての同時要求を横切って)
転送速度:82.23 [バイト/秒]受信
テスト結果
、非常に重要な性能向上をopcacheを有効にします。1.。
7.665 - > 1.406
7.588 - > 1.312
2. phar.cache_listを有効にする:パフォーマンスにほとんど改善があります。
7.665 - > 7.588
1.406 - > 1.312
これを暗号化するには、次のページのレッツ・暗号化バージョンをSSL証明書のウェブサイトを取得する:https://letsencrypt.osfipin.com/を。
したがって、最も一般的な方法は、opcache使用することです。