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.
 



03enterprise

Copyright © Majestic, Inc. Privacy Policy