サーバーのスループットを最大化するPHP設(shè)定の微調(diào)整:WordPress開(kāi)発者のための必須ガイド

サーバーのパフォーマンスとコードの効率は、次のような基準(zhǔn)に基づいてユーザー體験を決定します。 PHP アプリケーション(例 ワードプレス 歌で応える フェイスブック など)は、ウェブ開(kāi)発において中心的な位置を占めています。この記事では、設(shè)定を微調(diào)整することでどのように PHP スループットを向上させ、よりスムーズで応答性の高いユーザー體験を提供します。

なぜPHPのパフォーマンスを最適化するのですか?

畫(huà)像 [1] - PHPのパフォーマンスを最適化する: スループットを向上させる究極のPHP.ini設(shè)定ガイド

PHPはインタプリタ型言語(yǔ)であり、コンパイル型言語(yǔ)に比べて実行速度が速いです。低調(diào)PHP のパフォーマンスを最適化することは、ほとんどの PHP ベースのアプリケーションにとって重要です。PHP のパフォーマンスを最適化することは、ほとんどの PHP ベースのアプリケーションにとって重要です。PHP のコードと設(shè)定を最適化することで、以下のことが可能になります。サーバー負(fù)荷の軽減応答時(shí)間の短縮を追加します。同時(shí)噴火リクエスト処理能力。パフォーマンスの最適化は次のことに直接影響します。検索エンジンランキングユーザー維持率やコンバージョン率などの重要な指標(biāo)。

サーバー構(gòu)成が PHP のスループットに與える影響

サーバーの設(shè)定は、PHP がコードやリクエストを効率よく処理するために重要です。 メモリリミットそしてアップロード最大ファイルサイズ 歌で応える 最大実行時(shí)間) は、PHP プロセスに割り當(dāng)てられるリソースの量と実行可能な時(shí)間を決定します。 設(shè)定を誤ると、実行速度が遅くなったり、メモリの消費(fèi)量が増えたり、 サーバーがクラッシュしたりする可能性があります。

PHPの設(shè)定によって影響を受ける重要な領(lǐng)域:

  • 資源配分: ピーク時(shí)に十分なリソースを確保しつつ、メモリの使い過(guò)ぎを防ぐために、適切なメモリ制限を設(shè)定します。
  • 実施効率: 複雑なタスクとサーバーリソースの使用量のバランスをとるために、最大実行時(shí)間を調(diào)整します。
  • データ処理: アップロードファイルサイズとパブリッシュデータの制限を設(shè)定することで、データフローを簡(jiǎn)素化し、応答性に影響を與えます。
  • スループット: PHPの設(shè)定を最適化し、サーバーが同時(shí)に多くのリクエストを処理できるようにし、処理速度を向上させます。

これらの設(shè)定を最適化することで、PHP アプリケーションのスループットを効果的に向上させることができ、非効率なアプリケーションをリソースの有効活用が可能な高速なシステムに変換することができます。次の節(jié)では、スループットを最大化するために PHP の設(shè)定を最適化する方法をさらに説明します。

最適化 PHP.ini セットアップ

畫(huà)像 [2] - PHPのパフォーマンスを最適化する: スループットを向上させる究極のPHP.ini設(shè)定ガイド

php.ini ファイルは PHP の設(shè)定の中心となるもので、パフォーマンスに影響する 多くの重要な設(shè)定が含まれています。これらの設(shè)定を適切に調(diào)整することで、特に高負(fù)荷時(shí)の PHP アプリケーションのパフォーマンスを大幅に向上させることができます。

1.メモリの制限(メモリリミット)

メモリリミット 設(shè)定は、PHP スクリプトに割り當(dāng)てられるメモリの最大量を決定します。メモリ不足によるサーバーのクラッシュやパフォーマンスの低下を防ぐために下るメモリ制限を適切に設(shè)定することが重要です。メモリ制限が低いと、特定のメモリ集約的なタスク(畫(huà)像処理、データベースクエリなど)が発生する可能性があります。挫くまた、高すぎる設(shè)定はサーバーのリソースを浪費(fèi)します。

畫(huà)像 [3] - PHPのパフォーマンスを最適化する: スループットを向上させる究極のPHP.ini設(shè)定ガイド
  • 推薦します: アプリケーションの典型的なメモリ使用量を評(píng)価し、妥當(dāng)なメモリ制限を設(shè)定します。
memory_limit = 256M # アプリケーション要件に応じて調(diào)整

2.アップロード可能な最大ファイルサイズアップロード最大ファイルサイズ)

畫(huà)像 [4] - PHPのパフォーマンスを最適化する: スループットを向上させる究極のPHP.ini設(shè)定ガイド

アップロード最大ファイルサイズ PHP が受信できるファイルの最大サイズを決定します。この設(shè)定は、アプリケーションでファイルのアップロードを許可している場(chǎng)合 (電子商取引プラットフォームや SNS など) には非常に重要です。低すぎるとファイルのアップロードに失敗し、高すぎるとパフォーマンス (特に並行処理が多い場(chǎng)合) に影響します。

  • 推薦します: この値は、ユーザーの要件とファイルの種類に応じて設(shè)定します。
upload_max_filesize = 64M # ビジネス要件に応じてアップロードファイルサイズを調(diào)整します。

3.最大実行時(shí)間(最大実行時(shí)間)

最大実行時(shí)間 PHP スクリプトの最大実行時(shí)間を設(shè)定します。デフォルトでは、PHP はスクリプトを 30 秒を超えると、スクリプトは終了します。特定の長(zhǎng)時(shí)間実行操作(バッチ データ処理や大容量ファイルのアップロードなど)では、この時(shí)間を長(zhǎng)くする必要がある場(chǎng)合があります。並行性の高いアプリケーションでは実施時(shí)間の短縮スループットを向上させることができます。

畫(huà)像 [5] - PHPのパフォーマンスを最適化する: スループットを向上させる究極のPHP.ini設(shè)定ガイド
  • 推薦します: タスクの種類に応じて実行時(shí)間を調(diào)整します。
max_execution_time = 300 # スクリプト実行の複雑さを調(diào)整

アプリケーション設(shè)定の推奨事項(xiàng)

  • テストの変更 各修正 php.ini どのような設(shè)定をする場(chǎng)合でも、まず開(kāi)発環(huán)境やテスト環(huán)境で変更の効果を検証し、パフォーマンスの問(wèn)題が発生しないことを確認(rèn)する必要があります。
  • 環(huán)境固有の設(shè)定: 開(kāi)発環(huán)境、テスト環(huán)境、本番環(huán)境では、セキュリティと安定性を確保するために異なる設(shè)定ファイルを使用することができます。
  • ダイナミックな調(diào)整: いくつかの設(shè)定、特に メモリリミット以下はPHPスクリプトの動(dòng)作の簡(jiǎn)単な説明です。PHPスクリプトによって実行時(shí)に調(diào)整することができますが、一貫性のない動(dòng)作を避けるために注意して使用する必要があります。
ini_set('memory_limit', '512M'); // 一時(shí)的にメモリ制限を増やします。

オペコードキャッシュ (OpCache)

畫(huà)像 [6] - PHPのパフォーマンスを最適化する: スループットを向上させる究極のPHP.ini設(shè)定ガイド

オペコードキャッシュ は PHP の最適化における主要なテクニックのひとつで、 PHP スクリプトを?qū)g行するたびにコンパイル時(shí)間を短縮することで実行効率を大幅に向上させます。opcode caching を有効にすると、PHP はコンパイル済みのバイトコードをメモリ上に保存します。

OpCache の有効化と設(shè)定

PHP には オペキャッシュ.を確認(rèn)します。 php.ini ファイルを有効にしてください:

  • OpCacheを有効にします:
zend_extension=opcache.so
opcache.enable=1
  • 基本構(gòu)成:
opcache.memory_consumption=128
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=4000
opcache.revalidate_freq=60
opcache.save_comments=1
opcache.enable_cli=1

OpCache設(shè)定の微調(diào)整

アプリケーションとサーバーのリソースに応じて、OpCacheの設(shè)定をさらに微調(diào)整することができます:

  • opcache.memory_consumptionこの値を大きくすると、大規(guī)模アプリケーションのパフォーマンスが向上します。
  • opcache.max_accelerated_filesキャッシュされるファイルの最大數(shù)を設(shè)定します。
  • opcache.revalidate_freq低い値は一貫した更新を保証しますが、パフォーマンスに若干影響する可能性があります。

OpCache の使用狀況の監(jiān)視

OpCache ステータススクリプトを使用して、キャッシュのヒット、ミス、およびその他の情報(bào)を監(jiān)視し、キャッシュが正しく動(dòng)作していることを確認(rèn)します。

<?php
opcache_status();
畫(huà)像 [7] - PHPのパフォーマンスを最適化する: スループットを向上させる究極のPHP.ini設(shè)定ガイド

リアルパス?キャッシュ

PHP リアルパス?キャッシュ ファイルパス解決の効率を向上させるために、特にファイルシステムに頻繁にアクセスするアプリケーションで使用します。解析されたパスをキャッシュすることで、繰り返されるファイルシステム操作が回避されます。

リアルパス?キャッシュの設(shè)定

ある php.ini ファイルでは、以下のパラメータを設(shè)定できます:

畫(huà)像 [8] - PHPのパフォーマンスを最適化する: スループットを向上させる究極のPHP.ini設(shè)定ガイド
  • realpath_cache_sizeファイル操作を多用するアプリケーションでは、キャッシュを増やすことが効果的です。
realpath_cache_size = 4096K # キャッシュサイズを4MBに設(shè)定
  • realpath_cache_ttlキャッシュヒットの回?cái)?shù)を減らすために、キャッシュの生存時(shí)間を設(shè)定します。
realpath_cache_ttl = 120 # キャッシュの有効期限を120秒に設(shè)定します。

評(píng)価と調(diào)整

ファイルアクセスツール(例. ストレース)はアプリケーションのファイル?アクセス?パターンを分析し、適切なキャッシュ?サイズと トランジスタトランジスタロジック.

JITコンパイル

畫(huà)像 [9] - PHPのパフォーマンスを最適化する: スループットを向上させる究極のPHP.ini設(shè)定ガイド

PHP 8 では ジャストインタイム(JIT)コンパイルこれは、PHPコードを?qū)g行時(shí)にマシンコードにコンパイルすることで、 特にCPU負(fù)荷の高いアプリケーションの実行速度を向上させる新しい方法です。

JITの設(shè)定

ある php.ini JITを有効にし、以下のパラメータを設(shè)定します:

opcache.jit_buffer_size=100M #はJIT用に100MBのメモリを割り當(dāng)てます。
opcache.jit=1255 # JIT を有効にし、介入レベルを設(shè)定します。

JITパフォーマンスのテスト

JITをコンフィギュレーションした後、以下の方法でパフォーマンス?テストを行う必要があります。ベンチマーキングそして負(fù)荷テスト歌で応えるコントロールアプリケーションのパフォーマンスへの影響を評(píng)価します。

セッション管理の最適化

効率的 セッション管理 PHP アプリケーションのパフォーマンスは重要です。ハイコンカレントPHP はデフォルトでセッションデータをファイルシステムに保存しますが、 トラフィックの多いアプリケーションでは、(Redis や Memcached のような) インメモリストレージのほうが効率的です。

セッション構(gòu)成の最適化

以下のセッション設(shè)定を調(diào)整することで、パフォーマンスを向上させることができます:

  • セッション.gc_probability 歌で応える セッション.gc_divisor適切なチューニングを行うことで、パフォーマンスとセッションのクリーンアップのバランスをとることができます。
セッション.gc_probability = 1
セッション.gc_divisor = 100
  • セッション.gc_maxlifetimeセッションの最大有効時(shí)間を制御し、過(guò)度に長(zhǎng)いセッションがリソースを消費(fèi)するのを防ぎます。
session.gc_maxlifetime = 1440 # セッションの最大有効時(shí)間を24時(shí)間に設(shè)定します。
畫(huà)像 [10] - PHP のパフォーマンスを最適化する: スループットを向上させる究極の PHP.ini 設(shè)定ガイド

カスタムセッションハンドラ

分散環(huán)境では、例えばカスタムセッションハンドラーを使ってストレージを最適化することができます:

session.save_handler = 'redis'
session.save_path = "tcp://localhost:6379"
畫(huà)像 [11] - PHPのパフォーマンスを最適化する: スループットを向上させる究極のPHP.ini設(shè)定ガイド

はんけつをくだす

PHP設(shè)定の最適化これは、サーバーのスループットや応答性を向上させる効果的な方法です。PHP.ini の設(shè)定を適切に行い、OpCache を有効にし、 JIT キャッシュや Realpath キャッシュを設(shè)定し、セッション管理を最適化することで PHP アプリケーションのパフォーマンスを大幅に向上させることができます。それぞれの調(diào)整は、実際のアプリケーションの要件やサーバーのリソース、 負(fù)荷狀況に合わせて慎重に行う必要があります。


お問(wèn)い合わせ
チュートリアルが読めない?無(wú)料でお答えします!個(gè)人サイト、中小企業(yè)サイトのための無(wú)料ヘルプ!
カスタマーサービス WeChat
カスタマーサービス WeChat
電話:020-2206-9892
QQ咨詢:1025174874
Eメール:info@361sale.com
勤務(wù)時(shí)間: 月~金、9:30~18:30、祝日休み
? 複製に関する聲明
この記事を書(shū)いた人: Xiesong
終わり
好きなら応援してください。
クドス84 分かち合う
おすすめ
解説 ソファ購(gòu)入

コメントを投稿するにはログインしてください

    コメントなし