libro
www.tuyano.com
Google Apps Scriptプログラミング [中級編]

Cache Serviceによるキャッシュ機能の利用 (1/3)

作成:2012-08-26 09:52
更新:2012-08-26 09:52

■キャッシュ機能とは何か?

Google Apps Scriptではさまざまなサービスを活用した処理を作れます。それはそれで便利なのですが、こうした各種サービスを連携して処理するようなスクリプトをWebアプリケーションとして公開するようになると、いろいろと問題も発生します。

1つは、「スピードの問題」です。あちこちのサービスにアクセスしてその結果を受け取り、それに応じて表示などを構築する場合、サービスに問い合わせをしてそれを受け取る、というやり取りをしないといけません。このため、どうしても最終的な表示がされるまでに時間がかかります。

もう1つは、「APIの無駄な利用」です。Googleのサービスを利用するためには、それらのサービスに外部からアクセスするためのAPIをONにして使うことになります。現在、Googleが提供するサービスの多くは有料(あるいは一定の無料枠を超えると有料となる)ものが多く、APIの利用を極力少なく抑えることが運用コストの削減となります。毎度毎度、誰かがアクセスする度に馬鹿正直にAPIを呼び出していたのでは、あっという間に採算割れしてしまうでしょう。

こうした問題への解決策としてぜひ覚えておきたいのが「キャッシュサービス」です。キャッシュサービスとは、文字通りWebページをキャッシュしておくためのものです。表示する内容をあらかじめキャッシュしておき、必要に応じてそのキャッシュを読み込んでクライアント側に送信する――こうすることで、APIの利用回数を必要最小限に抑えることができますし、単にキャシュを読んで表示するだけですのでアクセスにかかる時間も短縮できます。

キャッシュサービスは、Google Apps Scriptでは「CacheService」というオブジェクトとして用意されています。このCacheServiceは、キャッシュサービス全般を管理するものです。そして、個々のキャッシュを扱うためのものとして「Cache」というオブジェクトも用意されています。

キャッシュを利用するためには、まずCacheServieを用意し、そこからアクセスのあったページのキャッシュを管理するCacheオブジェクトを取得して、そこからキャッシュのデータを取り出したり、あるいは格納したりします。

Cacheに保存されるのは、原則として「テキスト」のみです。それ以外のデータは保管することができません。オブジェクトをそのまま保存したりはできないので注意が必要です。

※プログラムリストが表示されない場合

AddBlockなどの広告ブロックツールがONになっていると、プログラムリスト等が表示されない場合があります。これらのツールをOFFにしてみてください。

※関連コンテンツ

「Google Apps Scriptプログラミング [中級編]」に戻る