仕事と晩飯とその他

日記です。

APIで取得した内容をキャッシュして表示を高速化ってことですか?

「GoogleAPI、遅いんスよね」という話をH氏にしたら「それはAPIで取得した内容を一端キャッシュして云々かんぬん」と言われるが、正直よくわからない。しかし、なんとなく想像はできる。APIで呼び出した内容を一時的にファイルとしてキャッシュし、それを使って既にお得意になりつつあるXMLと結びつけてどうこうすればよいわけだ(きっと)。

なるほど。

というわけで検索したら見つかった。さすがPHP。このあたりはGoogleAPIとかXSLTと比べてとても親切、というかやっぱり使ってるヒト圧倒的に多いんだろうなあ。

PHP講座 第7回 キャッシュを導入して、快適なページ表示を実現する (その1)」
http://www.phppro.jp/school/mashup/vol7/1

もう、まさにワタクシのやりたかったことそのまんまです。しかも、最初に挙げられた「3つの問題点」も、まさにこれから解決しなければいけなかったところじゃないですか。

ありがとうございます。

オレがやるべきこととしては、

1.H氏にPEARライブラリのCache_Liteを導入してもらってキャッシュを使えるようにすること(既に導入されてるかも)。
2.遅いと思っていたgapiで取得するページビューのデータについてXML(もしくは表示用のHTMLそのものでもいいわけだが)でキャッシュするようにする。
3.定時にCron(某ドットコムのサーバーでは使えるのかな)で前のデータを破棄するとともに新しいデータを生成し、キャッシュする。

3の手順は不要なのかなあ。でも今回の場合は一日一回しか更新が無いからこういう手順が可能ならそうしたほうが良い気がする。

でも、Cache_Liteのキャッシュを破棄するのはどうやって?

調べたら出てきた。PHP、本当に素晴らしい。

「Cache_Lite のキャッシュを削除する[Pear::Cache_Lite]」
http://www.bnote.net/php/pear/02_cache_delete.shtml