「[[Open棟梁 wiki>https://opentouryo.osscons.jp]]」は、「[[Open棟梁Project>https://github.com/OpenTouryoProject/]]」,「[[OSSコンソーシアム .NET開発基盤部会>https://www.osscons.jp/dotNetDevelopmentInfrastructure/]]」によって運営されています。

-戻る
--[[FAQ - その他]]
--[[設計のポイント]]

*目次 [#c394b69f]
#contents

*概要 [#u03a749c]
負荷テストでは、実行毎に変わる値を正規表現などを使用して抜いて引き継ぐ必要がある。

-ログインユーザ毎に可変となる値。
-実行タイミング次第で可変となる値。
-ランダム値が使用されていて可変となる値。

*ASP.NET一般 [#zeca1ef1]

**WebForms [#mad7663c]

***ポイント [#u9475ca2]
以下がポイントのもよう。

-HTTPクッキーマネージャを設定(Session利用時)

-VIEWSTATEの引継を設定

-EVENTVALIDATIONの引継を設定
>EVENTVALIDATIONは、EnableEventValidation = true の際に~
生成され、PostBackおよびCallbackイベントを検証するための情報。~
これにより、Response・PostBack間で保存 → 復元される値が、~
改ざんされていないかどうかをチェックするようになるので、~
Response・PostBack間で保存 → 復元される値が、~
動的に変更になるような場合は、追跡する必要がある。

-CSRF(XSRF)対策用のTokenの引継を設定
--[[CSRF(XSRF)対策の実装方針 - 対応方針の材料 - ASP.NET Web Forms>CSRF(XSRF)対策の実装方針#iffca9fe]]

***参考 [#c808874d]
-ASP.NET アプリケーションの過負荷試験を JMeter で行う。 - dunno logs~
http://d.hatena.ne.jp/dany1468/20101209/1291906047
-JMeter で ASP.NET の負荷試験検証した - minato128 blog~
http://minato128.hateblo.jp/entry/2013/05/24/212016

**MVC [#i76a8281]
-CSRF(XSRF)対策用のTokenの引継を設定
--[[CSRF(XSRF)対策の実装方針 - 対応方針の材料 - ASP.NET MVC>CSRF(XSRF)対策の実装方針#b06cdc95]]

*リッチクライアント一般 [#q49fda79]
リッチクライアントの負荷テストは、~
HTTPに特化した負荷テストツールでは実行が困難。
バイナリ電文を使用するリッチクライアントの負荷テストは、
-HTTPに特化した負荷テストツールでは実行が困難。
-アプリケーションの仕組み上、~
単純なバイナリの電文再送では負荷をシミュレートできない事が多い。

以下のような、回帰テストツールもあるが、

-マイクロフォーカス製品 - テストツール - Silk Test : マイクロフォーカス~
https://www.microfocus.co.jp/products/silk/silktest/
-HP Unified Functional Testing 12 | HPE 日本(UFT, 旧QTP)~
http://h22242.www2.hpe.com/products/software/hpsoftware/uft12.html

リッチクライアント(HTTPでない、若しくはHTTPでも内部がバイナリ電文)の場合、

負荷テストは、多重実行など、回帰テストツールでの代替が難しいため、~
クライアントサイドのシミュレータやスクリプトを作成して再生することが多い。

**3層 C/S [#nf6d8cf7]
3層 C/Sの場合、基本的にシミュレータやスクリプトを作成して負荷テストを実行する。

**2層 C/S [#fc39de1b]
2層 C/Sの場合、

-以下を使用してもイイかもしれない。
--トレース ファイルの再生 (SQL Server Profiler)~
https://msdn.microsoft.com/ja-jp/library/ms189604.aspx

-P層 / B層(D層)が適切にクラス分割されていれば、~
3層C/Sのようなシミュレータやスクリプトを作成しやすい。

*Open棟梁独自 [#b82b0aea]

**WebFormsのポイント [#k16fc2ef]
Open棟梁のWebForms用のP層フレームワークは、以下の4つのFormパラメタの引継が必要。

***Forms [#jf236ccb]
マスタページに定義されている、以下のパラメタをの引継が必要。

-<asp:HiddenField ID="ScreenGuid" runat="server" Value="0" />
-<asp:HiddenField ID="WindowGuid" runat="server" Value="0" />
-<asp:HiddenField ID="RequestTicketGuid" runat="server" Value="0" />

***QueryString [#qbc114ad]
-画面遷移時にQueryStringに付与される、BrowserWindowsGuid。

-この値は、WindowGuid (Form) = BrowserWindowGUID (QueryString)だが、~
PostBack → Redirectの遷移パターンの場合もあため、追跡必要。

***Cookie [#b8c5b492]
-HTTPクッキーマネージャを設定~
Open棟梁のWebFormのP層フレームワークではSessionが必須のため。 

**MVCのポイント [#k16fc2ef]
Open棟梁のMVC用のP層フレームワークには引き継ぎが必要なパラメタは存在しない。

**3層 C/S、2層 C/S [#y517ae73]
前述の、[[リッチクライアント一般>#q49fda79]]を参照のこと。

*参考 [#ie55af31]
-OpenTouryoProject/OpenTouryo
--OpenTouryo/BaseController.cs at develop~
https://github.com/OpenTouryoProject/OpenTouryo/blob/develop/root/programs/C%23/Frameworks/Infrastructure/Framework/Presentation/BaseController.cs
--OpenTouryo/testBlankScreen.master~
https://github.com/OpenTouryoProject/OpenTouryo/blob/develop/root/programs/C%23/Samples/WebApp_sample/ProjectX_sample/Aspx/Common/testBlankScreen.master


トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS