config.php の内容を手動で変更したときに、apc に変数を強制的に更新させるにはどうすればよいですか?
ここにはいくつかのオプションがあります。
- を呼び出すと
apc_store
、「生存時間」の値を秒単位で設定できます。たとえば、各構成値を正確に 5 分間持続するように設定できます。一度が欠落している場合 ( apc_exists
)、それらを再生成して再キャッシュするコードをトリガーできます。
- 「最終更新」時刻は、コードが到達できる場所と APC 内の両方に保存できます。2 つを比較します。APC キャッシュが古くなっている場合は、更新をトリガーします。
- すでに値を自動的にキャッシュしている場合は、キーに対して構成更新呼び出しを実行するものを持つことができ
apc_delete
ます。
- 値をまだ自動的にキャッシュしていない場合は、構成の更新を実行するものを単に
apc_store
自分自身を呼び出すようにする必要があります。
ここで暗示しているように、構成の更新が完全に手動のものではなくプログラムによるものであると仮定すると、1 つ目は最小限の労力で、2 つ目は最も正気であり、3 つ目と 4 つ目はおそらく正しいことです。
構成の更新が常に手動である場合は、キャッシュを単純にクリアまたは更新する、手動で呼び出すことができる小さなスクリプトを作成する価値があります。
率直に言って、APC をバイトコード キャッシュとしても使用している場合、すべてのページビューで純粋な PHP 構成ファイルを解析するコストは存在しません。そのような状況では、内部で定義された値をキャッシュすることはまったくばかげています。
変数が apc 内に存在し、新しい変数が既存 (更新されたバージョン) と同じ名前で追加された場合、古いキャッシュ値は上書きされますか?
apc_add
の代わりに使用していない限り、正しいですapc_store
。