Server Management | |||||||||||||||||||||
ファイルメーカーWeb公開表示スピードをさらに高速化するために(3) MySQL+ESSによる連携 01/02/2009 17:03:54 | |||||||||||||||||||||
![]() 前述したPHPによるキャッシュ機能を使う事でファイルメーカーWeb公開表示速度の劇的な改善が図られるのだが、フリーキーワード検索等のサービス提供時にはキャッシュは使用できない。ファイルメーカーフィールドの索引設定により、ほとんどの場合は実用に耐える速度にはなるのだが、フィールド内の情報量が多い、レコード件数が多い、ソートをかける、一時期にアクセスが集中するなど、ヘビーな処理が必要なサービスになってくると、どうしても処理速度にストレスを感じるようになってくる。 たとえば、あるテストサイトを作成し、500レコードあるデータベースのフィールド内の文字数を10,000、100,000バイトと増やしていったときのWeb検索スピード(キーワードを入力して送信した後、サーバー内で検索が完了するまでの時間)をベンチマークスクリプトを使用して測ってみると、
と言う結果で、文字数が膨大になると検索スピードに大きく影響してくる。 しかし、同じデータベースをそっくりそのまま、FileMaker Server9からMySQLへ、同じマシン内でバックエンドサーバーの切替を行うだけで、
という結果で、劇的な速度向上を図ることができる。2回目はキャッシュも働き、半分の処理速度になる。これはシーケンシャルな日本語全文検索の結果であるので、インデックス化が可能なフィールドの完全一致検索であれば、さらに速度の改善が図られるはずだ。 この結果を踏まえると、ヘビーな処理の表示速度が問題になっているサイトや、Web公開時の検索スピードが重要なWebデータベースは、ファイルメーカーサーバーのみの仕様からESSとしてMySQLを導入することは大きなメリットとなることは確実だ。 しかし、このFileMaker Server+MySQLへの移行については、いくつかの懸案事項を留意した上で行う必要がある。
ほかにも制限事項はあるが、もちろんファイルメーカーの機能を使って補完可能なものもある。当社では、このような遅延対策として、ファイルメーカーのWebビューワー機能を使って対応することも多い。エンタープライズ志向の開発場面では、今後Webブラウザの活用機会は増えるだろう。上記の短所をもってしても、高速な検索サービスを提供したいケースでは、ファイルメーカーサーバーオンリーの仕様に加えて、外部データソースとしてMySQLを導入することは大きなメリットになるだろう。
|
Comments |