Server Management
ファイルメーカーWeb公開表示スピードをさらに高速化するために(1) 09/05/2008 13:05:51
Webサイトを「商売道具」として活用されているお客様は、その機能やスピードの向上はそのまま売上に影響する。さらに、お客様に「ファイルメーカーWeb公開ソリューション」を商品としている会社にとっても、「ファイルメーカーは遅い」という不評はそのまま会社の売上にも影響する。

ファイルメーカーのWeb公開表示スピードアップを考えるとき、
1)フィールドの索引(インデックス)設定をオンにする
2)使用しないフィールドはレイアウトから外す
3)数万文字のテキストが入っているようなフィールドは検索から除外する、
 可能であれば代用のキーワードフィールド等を作成する。
4)検索結果レコード数をなるべく少なくするように工夫する。
5)検索結果のソートを無しにするか、極力減らす。
 ソート済みの順でレコードをインポートし直すことで、一つのソートは削除できる。
6)早いCPU、ハードディスク、ネットワークなどインフラ整備
といったことが基本設定として重要である。

6)のケースで考えると、処理の重い検索や集計などのリクエストが入ると、CPUがフル稼働になり、待ち時間に絶えられなくなったユーザーからのリロードも発生し、悪循環のサイクルに突入する。とくにFM Web Publishing Engineの負荷は相当なようで、常時CPUとメモリの資源を消費し、スレッド数も増えてくる。そうなると、4GB以上のメモリ、最新の高速マルチコアCPUといった設備が必須になってくる。

しかし、ハードの充実は随時行うことは難しく、コストに大きく影響する。やはりデータベースやスクリプトの構造などソフト面を見直すのが賢明だ。そこで、1)の適用が出来ない場合の例として、リレーショナル、集計関数などどうしても索引設定ができないフィールドの問題を考えてみたい。
一つの例として、足を引っ張るその「索引設定不可フィールド」をそのままWeb公開に使わない方法がある。

例えば、「今月の売上集計」をWebで表示させる場合、ファイルメーカーの視点だけで考えると、ファイルメーカー上で日々の集計用フィールドを作り、そのフィールドをWeb公開すると考えられる。
しかし、ここで集計作業をファイルメーカーに計算させると、索引設定ができないフィールドに対して1日の集計x日数分の計算で、表示時間がかかってしまい、恐ろしい結果になる。

そんな時は、ファイルメーカーの集計用フィールドを表示するのではなく、ファイルメーカーから送出された1日のデータをPHP側で計算させればよい。

さらに、その結果をカレンダー形式で表示したい場合も、あえてファイルメーカー側で365日の関連テーブルを作る必要はない。PHP側で表示分の日数の配列を作り、その配列処理の中にファイルメーカーの検索結果を含めて表示させれば、無駄な日数分の検索作業をファイルメーカーにさせる必要は無くなる。

ファイルメーカーのメリットは使いやすさではあるが、Web公開を行うことでさらにスピードアップを図ることも可能なのだ。ファイルメーカーの機能に加え、専門知識は必要であるが、ぜひJavaScriptやPHPなどWebならではの機能を活用していきたい。



Comments

Add comment for this article
Comment
URL
Password (You can revise your comment later with this password.)
Security Code
Input this text in the right textarea.
 
Server Management
Cool Gizmos
Web Design Beyond
FileMaker Tips

v1.0 バックナンバー
お問い合わせ
このサイトはファイルメーカーProを使った誰簡®Webにて運営されています。
ファイルメーカーPro誰簡FAQ
オンラインストア