この記事では、PHP: APCu 拡張機能に付属するキャッシュ システムについて詳しく説明します。一定の参考値があるので、困っている友達が参考になれば幸いです。
毎日のキャッシュ、トラフィックへの抵抗、または一般的に使用されるホットスポット データの保存に、memcached や redis などのキャッシュ システムを誰もが使用したことがあると思います。プロジェクトに合わせて、PHP は私たちのためにシンプルなキャッシュ システムも用意しており、日常的な通常規模のサイトの開発を十分に処理できます。この拡張セットは APCu 拡張です。
APCu 拡張機能は、APC 拡張機能のアップグレードであり、現在はメンテナンスされていません。拡張機能の両方のセットは、実際にはオペコード キャッシュに基づいています。つまり、PHP 自体のオペコードによって実装されるキャッシュ機能です。
APCu のインストールは、通常の PHP 拡張機能とまったく同じで、非常に簡単です。最も重要なことは、この拡張機能が非常に小さいことです。ダウンロードとインストールはどちらも数秒で完了します。したがって、小規模プロジェクトに非常に便利に適用でき、PHP によってネイティブにサポートされており、ポートなどの追加構成は必要ありません。
キャッシュ システムが一般的に備えている追加、削除、クエリ、および自動増加の機能はすべて APCu 拡張機能に実装されています。
apcu_add("int", 1); apcu_add("string", "I'm String"); apcu_add("arr", [1,2,3]); class A{ private $apc = 1; function test(){ echo "s"; } } apcu_add("obj", new A); var_dump(apcu_fetch("int")); var_dump(apcu_fetch("string")); var_dump(apcu_fetch("arr")); var_dump(apcu_fetch("obj"));通常の使い方は比較的簡単で、各種データを追加すると普通にキャッシュに保存できます。ただし、オブジェクトや JSON を文字列にシリアル化せずに、オブジェクトを APCu キャッシュに直接保存できることに注意してください。システムが自動的にオブジェクトをシリアル化します。
apcu_cas("int", 1, 2); var_dump(apcu_fetch("int")); // Warning apcu_cas() expects parameter 2 to be int apcu_cas("string", "I'm String", "I'm New String");apcu_cas(string $key, int $old, int $new) は、$old 値を $new 値に変更します。変更できるのは数値型の内容のみです。文字列変更の場合は、 、エラーが報告されます。この機能の利点は何ですか?その最大の利点は、アトミックであること、つまり、高い同時実行性の影響を受けないことです。これに似ているのが apcu_store(string $key,mixed $var [, int $ttl = 0]) メソッドですが、このメソッドはキャッシュの内容を変更するだけです。キャッシュ キーが存在しない場合は、新しいキャッシュ キーを作成します。型による制限はなく、もちろんアトミックではありません。
apcu_entry("entry", function($key){ return "This is " . $key; }); var_dump(apcu_fetch("entry"));apcu_entry(string $key , callable $generator [, int $ttl = 0 ]) この関数の機能は、匿名関数 $generator を実行し、$key のキャッシュが存在しない場合に $key を変更することです。それをキー値として渡し、コンテンツを生成してこのキャッシュの値として返します。
var_dump(apcu_cache_info());最後に、現在のシステム内のすべての APCu キャッシュ情報を表示したい場合は、apcu_cache_info() 関数を直接使用できます。
概要
https://github.com/zhangyue0503/dev-blog/blob/master/php/202004/source/%E6%88%91%E4%BB%AC%E4%B9%9F%E6%9C%89%E8%87%AA%E5%B8%A6%E7%9A%84%E7%BC%93%E5%AD%98%E7%B3%BB%E7%BB%9F%EF%BC%9APHP%E7%9A%84APCu%E6%89%A9%E5%B1%95.php推奨学習:
php ビデオ チュートリアル
以上がPHP に付属するキャッシュ システムの詳細な紹介: APCu 拡張機能の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。