2
大きなファイルをアップロードするためのColdFusionの設定
大きなファイルのアップロードを受け入れるようにcoldfusionサーバーをセットアップしようとしていますが、いくつかの制限にぶつかっています。これが私がこれまでに観察したものです: アップロードのサイズを制限するColdFusion Administratorの設定には、「投稿データの最大サイズ」と「リクエストスロットルメモリ」の2つがあります。アップロードのサイズ(HTTPオーバーヘッドを含む)がこれらの設定のいずれかよりも大きい場合、アップロードは拒否されます。これらのうち2つが必要な理由がわかりません。どちらを高く設定しても、私が知る限り、効果はありません。下の方が勝つ。 誰かが大きすぎるファイルをアップロードしようとすると、素敵なエラーメッセージが表示されません。約1 TCPウィンドウ分のデータを送信した後、アップロードが永久にハングします。そして、それは本当に悪い方法でハングします。クライアントがギブアップして切断した後でも、関連するapacheスレッドは引き続き拘束されています(これはmod_statusを使用して確認できます)。スタックしたスレッドは、新しい要求を受け取るためのものがなくなり、サーバーを再起動する必要があるまで、ビルドを続けます。 「リクエストスロットル」は、私にはよくわかりません。それに関するすべてのドキュメントは、メモリ領域のサイズとしてそれについて語っています。それがそうであるなら、私はそれがファイルサイズにどのように関連しているかを見ることができません。これは、私が信じたくないことを示唆しています。ColdFusionは、アップロードされたファイル全体をディスクに書き込む前に、メモリに丸呑みします。アップロードループ(中サイズのブロックを読み取り、ディスクに書き込み、完了するまで繰り返す)が非常に簡単な場合、正気な人はそれを行いません。(HTTPマルチパート/フォームデータポストの構造が少し難しくなることは知っていますが、Web開発製品を使用しているAdobeのような大企業がきっとこれを正しく行うことができます...できませんか?) ファイル全体の丸呑みが実際に起こっていることである場合、彼らはどのようにして実行可能なサイズ制限を選択することを期待していますか?ギガバイトを許可すると、数人の同時ユーザーがサーバーをメモリ不足で実行することができます。そして、ギガバイトのアップロードを許可しないのですか?投稿する動画があり、編集する時間はありません。 追加情報 ここにいくつかのバージョン番号があります。 ウェブサーバー: Server: Apache/2.2.24 (Win64) mod_jk/1.2.32 ColdFusion: Server Product ColdFusion Version ColdFusion 10,285437 Tomcat Version 7.0.23.0 Edition Enterprise Operating System Windows Server 2008 R2 OS Version 6.1 Update Level /E:/ColdFusion10/cfusion/lib/updates/chf10000011.jar Adobe Driver Version 4.1 (Build 0001) 追加情報#2 制限フィールドに入力した値を知りたいのですが、どちらもしばらくの間200 MBに設定されていました。「投稿データの最大サイズ」を2000MBに増やしても効果がありませんでした。「Request Throttle Memory」を2000 MBに増やすと、より大きなアップロードが可能になることはすでにわかっています。私がここで探しているのは、すぐに「そこに大きな数字を入れる」ことではありません。回答ですが、これらの設定が実際に何を意味するか、およびサーバーのメモリ使用量にどのような影響があるかについての詳細な説明です。 …