【SCAG】8章 - スマートクライアントアプリケーションパフォーマンス
スマートクライアントアーキテクチャ設計ガイド
Chapter 8 - Smart Client Application Performance
・パフォーマンス設計
・パフォーマンスチューニングと分析
・まとめ
・リファレンス
スマートクライアントアプリケーションはWebアプリケーションよりリッチでレスポンスの良いユーザーインターフェースを提供し、ローカルシステムリソースを最大限に活用することができる。アプリケーションの大部分がユーザーコンピュータ上に存在する場合、アプリケーションはWebサーバーに対する定期的なラウンドとリップを必要としない。これにより、パフォーマンスとレスポンスを向上させることができる。しかしながら、スマートクライアントアプリケーションの最大限の潜在能力を引き出すために、アプリケーションの設計フェーズでパフォーマンス問題を十分考慮したほうが良い。アプリケーションの設計時にパフォーマンス問題を扱うことは、早期にコストを抑え、後でパフォーマンス問題に出くわす可能性を軽減する。
注記: スマートクライアントアプリケーションのパフォーマンスを改善することは、アプリケーション設計時の問題だけではない。パフォーマンスの良い.NETのソースコードを作成するために、アプリケーションのライフサイクルを通して行われる対策が数多くある。たとえ.NET共通言語ランタイム(CLR)のコードを実行する効率がとても良かったとしても、コードのパフォーマンスを向上するために利用される数多くのテクニックがあり、コードレベルで引き起こされるパフォーマンス問題を未然に防ぐ。これらの問題に関するより詳細な情報は、http://msdn.microsoft.com/perfを参照。
現実的なパフォーマンス要件を定義し、アプリケーション設計時における潜在的な問題を特定することは明らかに重要である。しかし、パフォーマンスの問題はコードが記述された後やテストされた後にしか発生しない場合もある。この場合には、パフォーマンス問題の追跡するのに役立つツールやテクニックがある。
本章では最適なパフォーマンスを確保するためにスマートクライアントをどのように設計しチューニングするかについて検証する。スレッド化やキャッシュ化を含む設計時やアーキテクチャ上の数多くの問題を論じ、アプリケーションのWindowsフォーム部分のパフォーマンスを良くする方法を検証する。本章はスマートクライアントアプリケーションのパフォーマンス問題を追跡し診断するのに利用できるテクニックやツールについても調査する。