ホームページ  >  記事  >  バックエンド開発  >  Win7 での PHP 拡張機能 xcache の追加と設定に関する詳細なチュートリアル

Win7 での PHP 拡張機能 xcache の追加と設定に関する詳細なチュートリアル

WBOY
WBOYオリジナル
2016-07-25 08:52:291042ブラウズ
win7 システムで PHP の xcache 拡張機能を追加および設定する方法、xcache のインストールと構成チュートリアル、xcache.slots キャッシュのファイル/変数ハッシュ参照値については、実際の状況に応じて設定できます。それを必要とする友人はそれを参照できます。 xcache 3.2.0 (php5 の全範囲でサポートされています)、公式 Web サイト: http://xcache.lighttpd.net/

英語が苦手な場合は、右側をクリックして言語を中国語に切り替えることができます。

まず、最新バージョンをダウンロードします: http://xcache.lighttpd.net/pub/releases/3.2.0/ 正しいバージョンを選択することを忘れないでください。

ダウンロードして解凍し、php の ext ディレクトリに置き、php.ini を開いて extension = php_xcache.dll を追加します

圧縮パッケージには、xcache の php.ini の中国語版のデモンストレーションと、xcache と情報を表示するプログラムも含まれています。

xcache.admin.pass は md5 で暗号化されて保存されることに注意してください

xcache.count は CPU の数に応じて設定できます。デフォルトは 1 です

xcache.slotsによってキャッシュされたファイル/変数のハッシュ参照値は、実際の状況に応じて設定できます

完了したら、Apache サービスを再起動します。

;; このファイルは単なる例です。有効にするには、php.ini に設定してください。 [xcache-common] ;; Windows 以外の例: 拡張子=xcache.so ;; Windows システムの例: ; 拡張子 = php_xcache.dll [xcache.admin] xcache.admin.enable_auth = オン xcache.admin.user = "ムー" ; xcache.admin.pass = md5($あなたのパスワード) ; $your_password を使用してログインします。パスワードを md5 で暗号化して入力してください。 xcache.admin.pass = "" [xキャッシュ] ; ここでのオプションのほとんどは、特に明記されていない限り、ini でのみ変更できます。 ; 基礎となるメモリ共有実装ソリューションを選択します。 xcache.shm_scheme = "mmap" ; 無効: xcache.size=0 ; 有効にする: xcache.size=64m など (任意の値 >0) また、システムの mmap の上限にも注意してください。 xcache.size = 60m ; CPU の数に設定することをお勧めします (cat /proc/cpuinfo |grep -cprocessor) xcache.count = 1 ; これは単なるハッシュの参照値であり、実際のストレージ項目 (PHP スクリプト/変数) はこの数値を超える可能性があります。 xcache.slots = 8k ; キャッシュされたアイテムの ttl、0=永続的 xcache.ttl = 0 ; 期限切れのアイテムをスキャンする時間間隔、0=スキャンなし、その他の値は秒単位です。 xcache.gc_interval = 0 ; 上記と同様、変数キャッシュ設定のみ xcache.var_size = 4m xcache.var_count = 1 xcache.var_slots = 8k ; xcache_*() 関数の ttl パラメータのデフォルト値 xcache.var_ttl = 0 ; xcache_*() 関数の ttl パラメータをこの設定以下に制限します。0=制限なし。 xcache.var_maxttl = 0 xcache.var_gc_interval = 300 ; /dev/zero の場合は無効 xcache.readonly_protection = オフ ; *nix システムの場合、xcache.mmap_path はディレクトリではなくファイル パスです (自動的に作成/上書きされます)。 ; 読み取り専用保護を有効にしたい場合は、「/dev/*」の使用を避け、「/tmp/xcache」のようなものを使用する必要があります。 ; 異なる PHP プロセス グループは同じ /tmp/xcache を共有しません。 ; win32 システムの場合、xcache.mmap_path= ファイル パスではなく匿名のマップ名であり、他のソフトウェアとの競合を避けるために xcache という単語を使用することをお勧めします。 xcache.mmap_path = "/dev/zero" ; xcache 例外が発生した場合にのみ役立ちます。空 (無効) または「/tmp/phpcore/」に設定します (php によってファイルに書き込むことができます)。 xcache.coredump_directory = "" ; Windows の場合のみ。xcache 開発者から指示がない限り、デフォルト値をそのまま使用します。 xcache.coredump_type = 0 ; 例外が発生したときにキャッシュを自動的に無効にする xcache.disable_on_crash = オフ ; 実験的な機能 (ある場合) を有効にします。 xcache.experimental=オフ ; 以下は、変更できるリクエストレベルの設定です。ini_set、.htaccess などです。 xcache.cacher = オン xcache.stat = オン xcache.optimizer = オフ [xcache.coverager] ; この機能をオンにすると、動作パフォーマンスが低下します。 ; この機能は、xcache.coverager == on && xcache.coveragedump_directory == "null 以外の値" の場合にのみ有効になります。 ; リクエストごとの設定。ini_set、.htaccess など。 ; コード プロセス カバレッジ情報の収集と xcache_coverager_start/stop/get/clean() などの関数を有効にします。 xcache.coverager = オフ xcache.coverager_autostart = オン ; php ini ファイル内でのみ設定されます。 ; このディレクトリがカバレッジ ビューア スクリプトで読み取れることを確認してください (open_basedir に注意) xcache.coveragedump_directory = ""

次に、phpinfo をチェックして、xcache が有効になっているかどうかを確認します。以下のように

Web パブリッシング ディレクトリに xcache などの新しいディレクトリを作成し、その中に公式圧縮パッケージの lib ディレクトリと htdocs ディレクトリを置きます。

ブラウザに http://127.0.0.1/xcache/htdocs/ と入力すると、ログイン アカウントとパスワードのダイアログ ボックスが表示され、xcache の環境と設定、変数などが表示されます。 。

しかし、実際には、xcache は変数をキャッシュするだけでなく、php ファイルもキャッシュできます。xcache 拡張機能が php 環境に設定されている場合、アクセスするすべての php ファイルが自動的にキャッシュされます。コードを変更する必要はなく、非常に便利で高速です。下の図に示すように、phpmyadmin にアクセスするだけで、公式の xcache パッケージは phpmyadmin のキャッシュ リストを検出できます。

コードはシングルトンモードで非常にシンプルで、アプリケーション環境で直接使用できます。コードはphp5.5.12で完全にテストされています。

$c =新しいキャッシュ_xcache(); $c->set('key', 'aaaa123'); echo $c->get('key'); ache_xcache::getinstance()->set('key1', '999999999999999'); エコーcache_xcache::getinstance()->get('key1'); /**------------------------コードの開始-------------- --------------------**/ クラスcache_xcache { /*** このクラスをシングルトン モードでインスタンス化します。 * * @var オブジェクト*/ protected static $_instance = null; /***デフォルトのキャッシュ戦略 * * @var 配列*/ protected $_defaultoptions = array('expire' => 900); /**※施工方法 * * @アクセスパブリック * @return ブール値*/ パブリック関数 __construct() { //xcache 拡張モジュールを分析 if (!extension_loaded('xcache')) { die('使用前にロードされる xcache 拡張機能!'); } true を返します。 } /*** ライトキャッシュ * * @アクセスパブリック * * @param string $key キャッシュキー * @param 混合 $value キャッシュ値 * @param integer $expire ライフタイム * * @return ブール値*/ public function set($key, $value, $expire = null) { //パラメータ解析 if (!$key) { false を返します。 } $expire = is_null($expire) ? $this->_defaultoptions['expire'] : $expire; return xcache_set($key, $value, $expire); } /*** キャッシュを読み取り、失敗またはキャッシュが無効になった場合は false を返します * * @アクセスパブリック * * @param string $key キャッシュキー * * @return 混合*/ パブリック関数 get($key) { //パラメータ解析 if (!$key) { false を返します。 } xcache_isset($key) を返しますか? xcache_get($key) : false; } /*** 変数をデータ ストレージにキャッシュする * * @アクセスパブリック * * @param 文字列 $key データキー * @param 混合 $value データ値 * @param int $expire キャッシュ時間 (秒) * * @return ブール値*/ public function add($key, $value, $expire = null) { //パラメータ解析 if (!$key) { false を返します。 } $expire = is_null($expire) ? $this->_defaultoptions['expire'] : $expire; !xcache_isset($key) を返しますか? $this->set($key,$value,$expire) : false; } /*** 指定したキャッシュを削除します * * @アクセスパブリック * * @param string $key キャッシュキー * * @return ブール値*/ パブリック関数削除($key) { //パラメータ解析 if (!$key) { false を返します。 } xcache_unset($key) を返します; } /*** すべてのキャッシュ変数をクリアします * * @アクセスパブリック * @return ブール値*/ パブリック関数 Clear() { return xcache_clear_cache(xc_type_var, 0); } /*** シングルトンモード * * このクラスのシングルトンインスタンス化に使用されます * * @アクセスパブリック * @return オブジェクト*/ パブリック静的関数 getinstance() { if (!self::$_instance) { self::$_instance = 新しい self(); } self::$_instance を返します。 } }


声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。