この記事では、主に 2 つの PHP APC 設定ファイルと詳細なパラメーターを紹介します。必要な方は、
1 のコンパイルを参照してください。パラメータは次のとおりです:
./configure --enable-apc --enable-apc-spinlocks --disable-apc-pthreadmutex
2 設定ファイル 2 セット
高パフォーマンス、頻繁な更新には適さない:
apc.enabled=1 apc.stat = 0 apc.stat_ctime = 0 apc.shm_size = 64M apc.shm_segments = 1 apc.num_files_hint = 1000 apc.ttl = 0 apc.slam_defense = 0 apc.write_lock = 1 apc.file_update_protection = 2
apc.enabled=1 apc.stat = 1 apc.stat_ctime = 1 apc.shm_size = 64M apc.shm_segments = 1 apc.num_files_hint = 1000 apc.ttl = 86400 apc.slam_defense = 0 apc.write_lock = 1 apc.file_update_protection = 2
ただし、新しくリリースされた問題については、PHP の再起動が必要になります。# 状況に応じて選択できます。
##さらに、パラメータの説明を添付します。
apc.enabled boolean
apc.enabled を 0 に設定すると、APC を無効にできます。これは主に、APC が静的に PHP にコンパイルされるときに使用されます。これは、他に無効にする方法がないためです (DSO としてコンパイルされている場合は、php.ini の拡張行をコメント アウトできます)。
apc.shm_segments integer
apc.shm_size integer
apc.optimization integer
apc.num_files_hint integer
apc.user_entries_hint integer
apc.ttl integer
apc.user_ttl integer
apc.gc_ttl integer
apc.cache_by_default boolean
apc.filters string
apc.mmap_file_mask string
apc.slam_defense integer
apc.write_lock. apc.file_update_protection integer apc.enable_cli integer # を簡単に作成できることは、さまざまなテスト シナリオで役立ちます。 ##apc.max_file_size integerデフォルトは 1M で、この値より大きいファイルはキャッシュされません。 apc.stat integerスクリプトの更新を有効にするかどうかチェック。このコマンドの値を変更する場合は十分に注意してください。デフォルト値 On は、APC がスクリプトが要求されるたびに更新されているかどうかをチェックし、更新されている場合は自動的に再コンパイルし、コンパイルされたコンテンツをキャッシュすることを示します。ただし、これを行うとパフォーマンスに悪影響が生じます。 Off に設定するとチェックは実行されないため、パフォーマンスが大幅に向上します。ただし、更新されたコンテンツを有効にするには、Web サーバーを再起動する必要があります (翻訳者注: cgi/fcgi を使用している場合は、cgi/fcgi プロセスを再起動する必要があります)。スクリプト ファイルがほとんど変更されない運用サーバーでは、このオプションを無効にすることで大幅なパフォーマンスの向上を実現できます。 apc.write_lock boolean負荷の高いサーバーでは、Web サーバーが初めて起動されるとき、または多くのファイルが同時に変更されるときに、APC が同じものをコンパイルする可能性があります。ファイルを複数回ファイル、書き込みロックにより、1 つのプロセスだけがキャッシュされていないスクリプトのコンパイルとキャッシュを試行することが保証されます。スクリプトを使用しようとする他のプロセスはオペコード キャッシュを使用せず、代わりにロックしてキャッシュが生成されるのを待ちます。 apc.report_autofilter boolean apc.include_once_override boolean apc.rfc1867 boolean apc.rfc1867_prefix stringファイルのアップロードのバッファリング項目エントリname prefix apc.rfc1867_name stringAPC で処理する必要があるアップロードされたファイルの隠しフォーム項目名 apc.rfc1867_freq string apc.rfc1867_ttl boolrfc1867 エントリの TTL。 apc.localcache boolean apc.localcache.size integer apc.coredump_unmap boolean apc.stat_ctime integer apc.canonicalize bool apc.preload_path stringapc.use_request_time bool ファイルの md5 値を記録します 関数の遅延読み込みを有効にする 以上がこの記事の全内容です。その他の関連コンテンツについては、PHP 中国語 Web サイトをご覧ください。 関連する推奨事項: PHP で一般的に使用されるフレームワーク関数の比較 # #####################################
によって非推奨になりました
実行中のサーバー上のファイルを変更するときは、アトミック操作を実行する必要があります。つまり、最初に一時ファイルに書き込み、次にそのファイルの名前を最終的な名前に変更 (mv) します。テキスト エディターや cp や tar などのプログラムはこのようには動作しないため、不完全なファイルがバッファリングされる可能性があります。デフォルト値 2 は、ファイルにアクセスするときに、変更時間がアクセス時間から 2 秒未満であることが判明した場合、バッファリングは実行されないことを意味します。不運な訪問者は破損したコンテンツを受け取る可能性がありますが、その悪影響はキャッシュによって拡大されません。すべての更新操作がアトミックであることを確認できる場合は、0 を指定してこの機能をオフにすることができます。 IO 操作が多いためにシステムの更新が遅い場合は、この値を増やす必要がある場合があります。
CLI バージョンの APC 機能を有効にするかどうかは、テストとデバッグの目的でのみこのオプションをオンにします。通常の状況では、CLI へのリクエストごとに APC キャッシュを作成、設定、破棄するのは理想的ではありませんが、CLI バージョンの PHP APC
早期/遅延バインディングの理由により自動的にキャッシュされないすべてのスクリプトを記録するかどうか。
include_once() 関数と require_once() 関数を最適化して、追加のシステム コールの実行を回避します。
ファイル アップロードの進行状況の監視機能を有効にする
ユーザーがアップロードしたファイル キャッシュ アイテムの更新頻度。値は合計ファイル サイズのパーセンテージ、または「k」、「m」、または「g」で終わる絶対サイズ (大文字と小文字は区別されません) です。0 は最速の更新を意味します。これにより、アップロード速度が遅くなる可能性があります。
非ロック ローカル プロセス シャドウを使用する- キャッシュ。バッファに書き込む際のロック間の競合を軽減します。
ローカル プロセスのシャドウ キャッシュのサイズは、十分に大きな値 (apc.num_files_hint. の約半分) に設定する必要があります。
シグナルがコア ファイルに書き込まれるときに、SIGSEGV シグナルなどの APC シグナル ハンドラーを有効にします。これらの信号を受信すると、APC は共有メモリ セグメントのマッピングを解除し、コア ファイルから除外しようとします。この設定により、致命的な信号を受信したとき、または APC の大規模な共有メモリ セグメント構成を使用したときのシステムの安定性が向上します。
ctime (作成時間) を検証すると、SVN または rsync によって引き起こされる問題を回避し、最後の統計以降に i ノードが変更されていないことを確認できます。 APC は通常、mtime (変更時間) のみをチェックします。
on に設定すると、相対パスは状態なしモード (ファイルの更新のチェックなし) で絶対パスに変更されます。
TTL の SAPI リクエスト開始時刻を使用します。
##apc.lazy_functions integer
##apc.lazy_classes integer
以上がPHP APC の 2 セットの設定ファイルとパラメータの分析の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。