
ASP.NETで、アプリケーションを作成しています。
主にイントラネットで使用する予定です。
環境は、以下のとおりです。
サーバー:Windows Server 2008 R2, IIS 7.5
データベース:SQL Server 2008 R2
開発環境:VS2010 C#, .NET Framework 4
5人程度で開発をしています。
aspxファイルの数は、50~60です。
上司からは、50クライアントくらいが同時に接続しても
パフォーマンスが落ちないようにしろと言われていますが、
今回が初めてのWebアプリの開発で、クライアント数がどの程度
影響をおよぼすのか想像がつきません。
データベースは、メインで使用するテーブルのレコード数が
最大50万件(10年分)くらいになると想定しています。
普通のASP.NET作り方で、上記のような使用条件の場合、
パフォーマンスへの影響はどの程度あるのでしょうか。
(例えば、接続ユーザー数が5人→50人になると応答時間も10倍になるとか、・・・)
それとも、ASP.NET MVCへの移行を検討したほうが良いのでしょうか。
(正直言いまして、ASP.NETは少し敷居が高いので、できればASP.NETで進めたいです。)
経験がおありの方、アドバイスをいただければ幸いです。
よろしくお願いいたします。
No.1ベストアンサー
- 回答日時:
Webアプリの場合、接続数も関係ないわけじゃないですが、それ以上に生成されるHTMLの大きさがパフォーマンスには直接影響すると思います。
たとえば50万件のデータを1つの画面で表示しよう、なんてやったら一人しかつかってなくてもHTMLの表示が延々終わらないとか。
あとはSQL文の作り方や操作の仕方でおかしなことしててそこで時間がかかるとか。。。
そういったとこの仕様のほうを気にしておけばいいんじゃないですかね。
実際Webアプリで接続ユーザーが50人ぐらい、ということでは接続数はほとんど気にする必要はないと思います。
なお、そもそもWebアプリがはじめて、ということだったらWebFromもMVCもそんなに敷居は変わらないと思いますよ。
と、そか、VB等でのWindowsアプリの経験しかないんだったらWebFormのほうがとっつき安いのは確かか。
#ちょっと凝ったことしようとしたら一緒ですけどね。。。
ご回答ありがとうございます。
そうですか、接続数よりもページのサイズのほうが影響があるのですね。
影響のある接続数となると、もっと桁が違った話になるということでしょうか。
ひとつのaspxのサイズを大きくしないとか、ページングして1回の表示数を制限するとか
ということに気をつけたほうがいい、というように理解しました。
WebFormとMVCについて
そうです、今までVBやC#でのWindowsアプリの開発しかしたことがありませんでしたので
比べてみたら、WebFormのほうがわかりやすかったのです。
No.2
- 回答日時:
蛇足でひとつ。
> ひとつのaspxのサイズを大きくしないとか、ページングして1回の表示数を制限するとか
> ということに気をつけたほうがいい、というように理解しました。
そのとおりですが、WebFormの場合はViewStateというものを使っていて、これが勝手に大きくなったりします。
簡単な例でいくと、SqlDataSourceとGridViewを使ってページングを実装すると、コードを書くことなくページングしてくれたりしますが、ViewStateにデータを全件持ってたりしますので、つくりによっては意図せずそこに50万件のデータが入ってしまったり。。。
というような点も注意点となります。
ご回答ありありがとうございます。
参考になります。
ページングを実装しても、DataSourceの使い方によっては
ページサイズが大きくなってしまうということですね。
注意して設計しようと思います。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
キヤノン アソビカメラ iNSPiC ...
-
vba マージエリアの行数を非表...
-
ffftpでファイル取得が0バイト...
-
VBAでPDFを作成する際、同じ名...
-
バッチ(bat)でリストファイルか...
-
Windowsで複数のファイルを同じ...
-
SJISで、全角文字Aの文字コード...
-
vba 空のデータをSplitする時の...
-
お世話になります。 Windows Up...
-
マクロで同じフォルダにある画...
-
エクセル・アプリケーションエ...
-
エクセルのファイル名をコピー...
-
ASP.NetでWebアプリ開発の経験...
-
エクセルに張り付けた写真のフ...
-
たくさんのフォルダーの中から...
-
SPO2測定
-
高校1年生情報の問題について。
-
エクセルのマクロについて教え...
-
インドe-Visa 承認書のApplicat...
-
SPIの非言語の割合と比が難しく...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
OracleInProcServer.XOraSessio...
-
データベース接続/切断の基本的...
-
c#のTLS1.2での通信について
-
ConnectNamedPipeの接続待ち
-
Oracle 10g standardへのJDBC接...
-
System.Net.Sockets.SocketExce...
-
c/sゲーム制作でのサーバーにつ...
-
●Excel VBAからSQLServerのデー...
-
DataAdapterだけじゃダメ?
-
Active Directory接続エラーに...
-
.NETでodbc接続したい。
-
FFFTPでファイル一覧を取得でき...
-
Delphi でOracleのデータを表示...
-
ソケット通信について
-
ローカル側のC#から、リモート...
-
Visual Studio 2005 Oracle
-
ASP.NETのパフォーマンスと接続...
-
Android端末から外部DB(MYSQL...
-
windows 2008 server にiisをイ...
-
LAN上のmdbのプロテクト
おすすめ情報