PHP-FPM 最適化を使用して CodeIgniter アプリケーションのパフォーマンスを向上させる方法
要約:
Web アプリケーションを開発する場合、パフォーマンスは非常に重要な考慮事項です。 CodeIgniter は、開発者が効率的な Web アプリケーションを迅速に構築できるようにする非常に人気のある PHP フレームワークです。ただし、CodeIgniter アプリケーションは、多数のリクエストを処理するときにパフォーマンスのボトルネックに遭遇する可能性があります。パフォーマンスを向上させるために、PHP-FPM を使用して CodeIgniter アプリケーションを最適化できます。この記事では、CodeIgniter アプリケーションのパフォーマンスを向上させるために PHP-FPM を構成および使用する方法を紹介します。
PHP-FPM 構成ファイル (通常は /etc/php-fpm.conf にあります) を開き、次のオプションを見つけて構成します。
pm = dynamic pm.max_children = 50 pm.start_servers = 10 pm.min_spare_servers = 5 pm.max_spare_servers = 20
上記の構成では、pm指定 プロセス管理方式はダイナミックモードです。 pm.max_children は、PHP-FPM が作成できる子プロセスの最大数を表します。 pm.start_servers は、起動時に PHP-FPM によって作成される子プロセスの数を示します。 pm.min_spare_servers と pm.max_spare_servers は、PHP-FPM が実行中に維持する子プロセスの数の範囲を表します。
構成が完了したら、構成ファイルを保存して閉じます。次に、PHP-FPM サービスを再起動します。
CodeIgniter 設定ファイル (通常は application/config/config.php にあります) を開き、次のオプションを見つけて設定します。
$config['index_page'] = ''; $config['uri_protocol'] = 'AUTO';
Set $config['index_page' ] URL からindex.php を削除する空の文字列です。 $config['uri_protocol'] を AUTO に設定すると、CodeIgniter が URI リクエスト機能を自動的に検出できるようになります。
nginx を例として、nginx 構成ファイル (通常は /etc/nginx/nginx.conf にあります) を開き、次のオプションを見つけて構成します。 fastcgi_pass を変更します。値は PHP-FPM の sock ファイル パスに設定されます (phpinfo() で確認できます)。
構成が完了したら、構成ファイルを保存して閉じます。次に、nginx サービスを再起動します。
CodeIgniter アプリケーションのパフォーマンスをテストするlocation ~ .php$ { fastcgi_pass unix:/var/run/php/php7.3-fpm.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; }
上記のコマンドは、指定された URL に 1000 件のリクエストを送信し、毎回 100 件の同時リクエストを送信します。実際の状況に応じて、-n および -c オプションの値を調整できます。
テスト結果に基づいて、CodeIgniter アプリケーションのパフォーマンスのボトルネックを分析し、対応する最適化を行うことができます。
結論:
PHP-FPM を使用すると、CodeIgniter アプリケーションのパフォーマンスを向上させることができます。 PHP-FPM を使用する利点には、効率的なプロセス管理と負荷分散が含まれます。上記で紹介した構成と最適化の方法に加えて、実際のニーズに応じて PHP-FPM と CodeIgniter の構成をさらに調整して最適化し、パフォーマンスを向上させることができます。以上がPHP-FPM 最適化を使用して Codelgniter アプリケーションのパフォーマンスを向上させる方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。