パフォーマンスチューニング

クライアント/サーバシステムの場合、検索結果のデータ件数が多くなると、サーバからの応答時間が極端に遅くなる。筆者の感覚では、4秒ぐらいがストレスを感じないで待てる時間だと思う。原因は、クライアントとサーバ間のデータ転送時間がかかるためである。実用的な業務システムとしては、ユーザに検索条件の変更を促すか、時間がかかっても全件表示するかを問い合わせるなどの仕組みが必要となると考える。

筆者は、この仕組みを実現するために、Facade層でデータ件数をチェックするようにした。
データ件数のチェックは、ビジネスロジックではなくアプリケーションの制約であるためである。同時に、上限を越えていることを伝えるフラグをresponseDTOオブジェクトにセットして返している。responseDTOを受け取ったクライアントは、上限の件数を超えていることを受け取ったら、メッセージを表示するなどの処理を記述する。

下記のサンプルは、データ件数をチェックし300件以上であれば、先頭から300件のデータのみクライアントに返すコードである。同時に、上限を越えたことを示すフラグをセットしている。

トラックバック

トラックバックURL:
http://www.apricot-jp.com/cgi/mt/mt-tb.cgi/266

関連情報

Copyright(C) 2007 アーキテクト360 Allrights reserved.