ホームページ  >  記事  >  バックエンド開発  >  eAccelerator を使用した API 開発の詳細な説明については、PHP_PHP チュートリアルで説明します。

eAccelerator を使用した API 開発の詳細な説明については、PHP_PHP チュートリアルで説明します。

WBOY
WBOYオリジナル
2016-07-21 15:07:34963ブラウズ

1. API とドキュメントの説明:
eAccelerator は、コード実装のほとんどが共有メモリに基づいているため、*nix プラットフォームでのみ使用できます。マイケル このサポートがいつ利用可能になるかはわかりません。
eAccelerator は、次の API インターフェイスとファイルを提供します: (次のファイルは、ソース パッケージの doc/php/ ディレクトリにあります)
ファイル リスト:

コードをコピーします コードは次のとおりです。

キャッシュ。php
dasm.php
encoder.php
info.php
loader.php
session.php


インターフェースリスト:
コード
array eaccelerator_cached_scripts ()
void eaccelerator_cache_output (string $key, string $eval_code, [int $ttl = 0])
void eaccelerator_cache_page (string $key, [int $ttl = 0])
void eaccelerator_cache_result (string $key, string $code , [Int $ ttl = 0])
void eaccelerator_caching (Boolean $ Flag)
void eaccelerator_clean ()
void eacclerate_clear ()
array eaccelerator_dasm_file (mixed $ ファイル名) xmixed eaccelerator_encode (mixed $ src, [mixed $ prefix = '' ], [string $pre_content = ''], [string $post_content = ''])
void eaccelerator_gc ()
mixed eaccelerator_get (string $key)
array eaccelerator_info ()
array eaccelerator_list_keys ()
void eaccelerator_load ()
boolean eaccelerator_lock (string $key)
void eaccelerator_optimizer (boolean $flag)
void eaccelerator_purge ()
boolean eaccelerator_put (string $key,mixed $value, [int $ttl = 0])
array eaccelerator_removed_scripts ()
boolean eaccelerator_rm (string $key)
void eaccelerator_rm_page (string $key)
boolean eaccelerator_set_session_handlers ()
boolean eaccelerator_unlock (string $key)



以下は、いくつかの言語で翻訳されたインターフェイスの説明です。ネチズン:
コードをコピー コードは次のとおりです:

eaccelerator_put($key, $value, $ttl=0)
$keyをキー名として$valueをキャッシュに保存します(オブジェクトタイプはphp4ではサポートされていますが、ソースから見るとzend2ではサポートされていないようです)コード)、$ttl はこれです。秒単位のキャッシュのライフ サイクル。このパラメータを省略するか、0 を指定すると、サーバーが再起動されてクリアされるまで時間制限がないことを意味します。

eaccelerator_get($key)
$key に基づいてキャッシュから対応する eaccelerator_put() に格納されたデータを返します。キャッシュが期限切れであるか存在しない場合、戻り値は NULL です

eaccelerator_rm($key)
に基づいています。 on $key キャッシュを削除します

eaccelerator_gc()
期限切れのキーをすべて削除してクリーンアップします

eaccelerator_lock($key)
マルチプロセスおよびマルチスレッド操作中のデータ同期を確実にするために、$key にロック操作を追加します。 eaccelerator_unlock($key) を呼び出してこのロックを解放するか、プログラム要求によってこのロックが自動的に解放されるのを待つ必要があります。
例:
eaccelerator_lock(“count”);
eaccelerator_put(“count”,eaccelerator_get(“count”)+1));
?>

eaccelerator_unlock($key)
に従ってリリース$key Lock

eaccelerator_cache_output($key, $eval_code, $ttl=0)
$eval_code コードの出力を $ttl 秒間キャッシュします ($ttl パラメーターは eaccelerator_put と同じです)
例:
< ?php eaccelerator_cache_output('test', ' echo time(); phpinfo();', 30); ?>

eaccelerator_cache_result($key, $eval_code, $ttl=0)
$eval_code の実行結果をキャッシュします。 $ttl 秒のコード ($ttl パラメーターは eaccelerator_put と同じです)、cache_output に似ています
例:


eaccelerator_cache_page($key, $ttl=0)
は、現在の全ページを $ttl 秒間キャッシュします。
例:
eaccelerator_cache_page($_SERVER['PHP_SELF'].'?GET='.serialize($_GET),30);
echo time();
phpinfo();
?>

eaccelerator_rm_page($key)
eaccelerator_cache_page() によって実行されるキャッシュを削除します。パラメータも $key

2. eAccelerator を使用して PHP コードで高速化します
さらに、eAccelerator のサポートが統合されました。 PHPCMS、次のとおりです。 PHPCMS のコードです
コードをコピーします コードは次のとおりです:

class queue
{
function __construct()
$this->__construct( );
}

function get($name)
{
return eaccelerator_get($name);
}

function set($name, $value, $ttl = 0)
{
eaccelerator_lock($ name);
return eaccelerator_put( $name, $value, $ttl); }

} 関数 rm($name)
accelerator_gc();
}
}






http://www.bkjia.com/PHPjc/327534.html

www.bkjia.com

tru​​e

http://www.bkjia.com/PHPjc/327534.html

技術記事

1. API とドキュメントの説明: eAccelerator は、便利で安定したネイティブ キャッシュ実装を提供します。コード実装のほとんどは共有メモリに基づいているため、*nix プラットフォームでのみ使用できます...

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