2006-02-04 ジューシィ―その4―
「ジューシィ」後半は携帯サイトのお話です。すべての機能の実装,公開作業が終わりましたので今回でジューシィのお話は最後です。
動的サイト
ジューシィ携帯版は動的サイトにしました。一般にCGIスクリプトを使ったサイトのことを動的サイトと言います。
試作品では静的サイトだったのだが,どうも作り難いなと思いました。理由はいくつかあります。各社の携帯電話に対応しなければならなかったのと,最短で15分おきに内容を更新しなければならなかったからなのです。でもいちばんの理由は,静的サイトではうまく広告に視線誘導させることができなかったからです。
ページ容量
標準2KB,最大5KBとしました。DoCoMoが推奨しているページ容量と同じです。最近の機種は100KBまで扱えるそうですが,機種を細かく場合分けするのは大変ですし,1ページの文章量が多すぎると読むのが大変になってしまいます。そこで5KBに統一してしまうことにしました。
auとVodafoneはおのおの推奨容量が違うのですが,DoCoMoより5KB多いくらいで大きな違いはありません。
キャッシュの導入
携帯サイトのひとつの山は,ページの分割処理ではないかと思います。携帯サイトでは普通,情報を小分けにして出力しなければなりません。1ページが長すぎると容量過多で受信そのものができなかったり,読む人がうんざりしたりしてしまうからです。
「ページを分ける」というときに,全体を作ってから一部分を切り出すのか,全体が分からなくても一部分を切り出すことができるのかで,性能が大きく違います。(後者の方が性能面で有利です。)
今回の場合,全体を作らなければ一部分を切り出すことができませんでした。このままではいわゆる「重いスクリプト」になってしまいアクセスが増えると500番台のエラーが発生して,サービスが停止してしまう心配がありました。
そこで全体量の計算結果をキャッシュすることで,再計算の回数を減らす工夫をしました。キャッシュ導入以前,実験環境ではひとつのリクエストが完了するまで2秒掛かっていました。キャッシュ導入後は1秒以下になりました。作戦,大成功だったのです。