maxRequestLength
フィールドの「理論的」最大レベルは、符号付き32ビット整数データタイプ(Int32.MaxValue
)の最大値です。
ただし、パフォーマンスを理解するためにアップロードをテストする必要があります。
EDIT:
a Microsoft support ticketから:
は理論的には、ファイルの最大アップロードサイズはかなり大きいです。ただし、ASP.NETの正常性監視のために は、ASP.NETに非常に大きな ファイルをアップロードすることはできません。 ASP.NETワーカープロセスには、2ギガバイト(GB)の仮想アドレス のスペースがあります。ただし、ASP.NETワーカープロセスのみ は、ヘルスモニタリングとメモリ のフラグメンテーションのために1 GBを少し超えて使用します。
アップロード処理中に、ASP.NETはファイル全体をメモリ にロードしてから、ユーザーがファイルをディスクに保存できます。したがって、プロセス は、Machine.configファイル内のprocessModel タグのmemoryLimit属性のためにリサイクルされる可能性があります。 memoryLimit属性は、 を指定して、プロセスが自動的にリサイクルされる前にASP.NETワーカープロセスが排気できる物理メモリの割合を と指定します。リサイクル は、メモリリークが原因でASP.NETがクラッシュするのを防ぎます。または、 が応答しなくなります。
さらに、 をアップロードできる最大ファイルサイズには、他の要素も影響します。これらの要素には、使用可能なメモリ、利用可能なメモリ、プロセッサの速度、現在のネットワークトラフィックなどが含まれます。 ファイルの定期的なトラフィックがアップロードされている場合、 は10から20メガバイト(MB)の範囲で最大ファイルサイズを使用することをお勧めします。 ファイルをめったにアップロードしない場合、最大ファイルサイズは100 MBになります。
メモASP.NETで100 MBを超えるファイルをアップロードすることができます。 ただし、この資料に記載されている最大ファイルアップロード サイズに従うことをお勧めします。 ファイルサイズをより正確に判断するには、本番環境で使用されるコンピュータの に似ているコンピュータで負荷テストを実行します。
パフォーマンスの影響は、誰かが大量のファイルをアップロードするたびに、それほど多くの帯域幅を使用することになります..... – Liam
IIS 7では約2 GBですが(帯域幅に関する@Liamの考慮事項は本当です)本当に必要な場合は...ファイルのアップロード用に別のインターフェースを実装する方がいいです(例えば、POSTとカスタムブラウザー拡張を使って)。 –
@ Liam、@ Adrianoアプリケーションはイントラネット上でホストされるため、利用可能な帯域幅はさらに大きくなります。しかし、私はIISが100MB〜200MBのファイルに対応しているかのように、ユーザーをある程度制限したいので、他のWebサイトのユーザーはパフォーマンスが低下します。 – Pratik