【tips】 PEAR::Cache_Liteのディレクトリ構造を深くする
レンタルサーバではmemcachedなどを使用することが出来ないので、何らかのファイルキャッシュを使うことが多いと思うんですが、いくつかのサービスではPEAR::Cache_Liteを導入しています。
Cache_Lite
規模が大きくなるとI/Oがネックになるので、ファイルキャッシュはいずれ問題になってくるのですが、小規模なサービスであればこれで十分。
で、導入自体は極めて簡単なんですけど、気になったのはディレクトリ。UNIX系サーバでは1ディレクトリにおけるファイル数は10,000くらいなので、サービスを継続しているといずれキャッシュが作れなくなってしまう。でもCache_Liteの設定(インスタンス生成時にオプションを配列で渡す)ではディレクトリを渡すだけ。今は大丈夫だけど念のためディレクトリを構造化したいな…
と思ったら、ちゃんとその設定がありました。
マニュアルは細かく読まないとダメだね。
「食わず嫌い」とはアレなものでして、長いことPDOでfetchといえばFETCH_ASSOCと思ってたんですが、なんだよ、FETCH_CLASS超便利じゃん、と言うことに気付いたのでいくつか試行錯誤してみるなど。
まぁ便利さ言うならちゃんとO/Rマッパー使えこの野郎という話ですけど、設定が面倒なときもあってついあれなので…FETCH_CLASSとマジックメソッド使ってみたかった的なアレでひとつ。
前からやりたいなぁと思っていたのだけど上手いこと入れることが出来なかったXdebug。
Xdebugを入れると例えばPHPでvar_dumpをしたときに、このようになっていたのが、
こうなります。便利。
改めてやり直してみたら意外にも上手く入ったので以下、メモしておく。
autoloadの実装に少し迷ったので、Symofnyの実装を見てみた。
また、マニュアルを参考にして小さなレベルで使用できるautoloadを書いてみた。
以下、メモ。
結構、適当な好き嫌いでぼんやり理解のまま放置してること。
もうちょっと何とかしたいので列挙。
(使用言語は例によってPHP)