PHPマニュアル/PEARマニュアル | ユーザフォーラムで議論/質問 | マニュアル検索 | ハイライト | ハイライトオフ | ポータル | php spot

キャッシュ | JavaScript入門&応用&リファレンスなら「JavaScriptist」

  

キャッシュ

キャッシュ – 圧縮したファイルのキャッシュ

導入

File_Archive 1.4 では、 キャッシュを使用して zip 圧縮の結果を保存できるようになりました。 これを行うために、PEAR パッケージ Cache_Lite を使用しています。

zip ファイルを作成するには、まずされた圧縮ファイルを用意することになります。 たとえば、ファイル A、B および C を含むアーカイブと ファイル A および C を含むアーカイブのふたつを作成したい場合は、 A と C については 2 回圧縮する必要があります。 キャッシュを使用すると、最初の圧縮の際に圧縮したファイル A、B および C をキャッシュしておくことができ、2 回目の圧縮ではそれを再利用できるようになります。

使用例

キャッシュを使うのは (使うべきなのは)、同じファイルを含む zip アーカイブを動的に何度も作成しなければならない場合などです。 たとえば、あなたが公開している画像や動画などからユーザが選択した ファイルを zip 形式でダウンロードさせるといった場合がこれにあたります。

これをキャッシュを使わずに行うと、多くのユーザがアクセスした場合に 反応が非常に遅くなることでしょう。キャッシュを使えば、 同じファイルを何度も圧縮することはなくなります。

私のマシン (工場出荷時のままの状態の thinkpad T42P) では、 キャッシュのない状態で 200MB の zip アーカイブを作成するのにかかった時間は 30 秒でした。キャッシュを使用した場合、まだキャッシュが作成されていないときは 32 秒かかりましたが、圧縮されるすべてのファイルがキャッシュに載った状態では 2 秒で処理が完了しました。

キャッシュの使用法

キャッシュの正体は Cache_Lite オブジェクトです。 つまり、まずこのパッケージをインストールしなければなりません。 インストールさえしてしまえば、あとは File_Archive::setOption() 関数で cache パラメータを使用するだけです。

キャッシュの準備

<?php
require_once "File/Archive.php";
require_once 
"Cache/Lite.php";

// キャッシュオブジェクトを作成します
$cache = new Cache_Lite(
    array(
        
// コンストラクタのパラメータは Cache_Lite のドキュメントを参照ください
    
)
);

// File_Archive に対して、いま作成したキャッシュオブジェクトを使うように指示します
File_Archive::setOption('cache'$cache);

// あとはいつもどおりにアーカイブを作成します
// archive.zip という名前のファイルを作業フォルダに作成します
File_Archive::extract(
    
'folderToCompress',
    
'archive.zip'
);

// アーカイブをユーザに送信します
File_Archive::extract(
    
'folderToCompress',
    
File_Archive::toArchive(
        
'archive.zip',
        
File_Archive::toOutput()
    )
);
?>
忘却曲線を使ってこの知識を確実に記憶に残す

フォーラムで「キャッシュ」について話す
各種マニュアル: PHPマニュアル | PEARマニュアル | Smarty(英語)マニュアル | PHP-GTKマニュアル | キャッシュ」をGoogle検索
copyright © 1997-2024 PHP ドキュメント作成グループ(ライセンス). provided by php spot. マニュアル: