Visual StudioのWeb参照とカスタムクラスのパフォーマンスを比較する
Visual Studioが自動生成するプロキシクラスの効率性を検証
テスト2:HTML生成
このプロジェクトでは、Webサービスから取得されたデータはソートされ、若干の書式設定がされたうえでユーザーのブラウザに表示されます。自動生成プロキシクラスを使用する場合は、DataSetをソートしてからDataSet内の行を列挙処理し、Response.Write文を使用して、対象となるデータとHTMLマークアップを出力します。XmlDocumentアプローチの場合は、顧客の提案に従い、XSLTを使用してソートされたXMLデータをHTMLに変換することにしました。
ご推察のとおり、Response.Write文を使用したデータ出力は、XSLTを使用してXMLをHTMLに変換するよりも高速です。下記のグラフは、各アプローチでの実行時間の違いを示したものです。データをソートする場合と、Webサービスに返された順番でデータを出力する場合の両方を示しています。両方のアプローチ間の時間の絶対差はごくわずか(1ミリ秒未満)です。従って、極端に負荷が高い環境でなければ、どちらのアプローチでも十分に有効です。ただ私たちは、DataSetをソートしてResponse.Writeでマークアップを出力する方法の方が好きです。なぜなら、DataSetを扱い、Response.Writeでクライアントにマークアップを出力する方がシンプルなため、XSLTを使用する場合よりもコードの読みやすさと保守性が向上する傾向があるからです。XSLTを使用する場合は、XSLTに精通し、また追加の構文を習得しなければなりません。
これらのテスト結果から分かるのは、Visual Studioの[Web参照の追加]を使用して自動生成プロキシクラスを作成するのは、単に時間の節約になるだけでなく、カスタムクラスからWebサービスを直接呼び出してそのデータをXmlDocumentにロードするよりも実際に効率的であるということです。同様に、Response.Write文によってマークアップをブラウザに直接出力することは、XSLTを使用してXMLをHTMLに変換するより高速です。
それでは、ハッピープログラミング!
参考資料
この記事は参考になりましたか?
既に会員の方はを行ってください。
- japan.internet.com翻訳記事連載記事一覧
- この記事の著者
-
japan.internet.com(ジャパンインターネットコム)
japan.internet.com は、1999年9月にオープンした、日本初のネットビジネス専門ニュースサイト。月間2億以上のページビューを誇る米国 Jupitermedia Corporation (Nasdaq: JUPM) のニュースサイト internet.com や EarthWeb.com からの最新記事を日本語に翻訳して掲載するとともに、日本独自のネットビジネス関連記事やレポートを配信。
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です
-
-
-
この記事は参考になりましたか?
この記事をシェア

