Server Management | |
ファイルメーカーWeb公開表示スピードをさらに高速化するために(2)キャッシュ機能 09/21/2008 22:39:41 | |
![]() ファイルメーカーのWeb公開表示スピードアップを考えるとき、リレーショナル、集計関数などで索引設定ができないフィールドがあると、それが足を引っ張ってしまうことは前回記述した。 それを回避するためにPHP側での集計処理が効果的、ということも述べた。 しかし、どうしても集計フィールドを使ったり、多数のクエリーを要求せざるを得ないページも存在する。また、人気サイトになると、いくらスクリプトをチューニングしても、特定時間にアクセスが集中し表示が遅くなることもあり、より効果的にCPUの負担を減らす工夫が必要になる。 どうしてもリアルタイム性が要求されるページは別にして、そうでないページであれば、キャッシュの利用という手段が最もスピード面での改善が見込まれる。つまり、PHPの処理やページ全体をスタティックなHTMLページのようにしてしまうのである。このあたりは大規模サイト、人気サイトでは常套手段になってきている。 ページのキャッシュ機能については、ファイルメーカーの計算式では難しいので、Webサーバー側でPHPスクリプトによる対応になる。Cache Liteなど、PHPのライブラリでキャッシュ機能を実現するものがあるので、Googleあたりで検索すれば適切なサンプルが見つかるだろう。 さもなければ、ページがGetメソッドで構成されていれば、PHPのファイル保存とファイル更新日時チェックスクリプト等を組み合わせてキャッシュ機能を実現させることも容易だ。ただし、もちろんだがそれぞれのケースに応じたセキュリティ設定や、会員ユーザーの個人情報ページ等はキャッシュされないような注意が必要だ。
このあたりを割り切ってしまえば、かなり高負荷な、集計を含めた計算式や、複数のクエリーをまとめたページ、他サイトからのRSSインクルードなど、ダイナミックな表示では時間がかかってしまうような高密度な情報ページを組み立ててしまっても、表示スピードやサーバー負荷を気にせず公開できる。 一般に、企業サイトなどではさすがに秒/分刻みのリアルタイム性を要求されることは少なく、むしろ表示スピード、ピーク時のアクセス処理能力が優先される。そういった場合はキャッシュによる対応が最適策であろう。 |
Comments |