問題タブ [large-file-upload]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - 60 秒後にスクリプトを強制終了するホスティング アカウントを使用したファイルのアップロード
php.ini ファイルですべての PHP 設定を設定して、ファイル サイズが 30 MB を超え、最大時間が 5 分を超えるようにしました。私が抱えている問題は、使用しなければならないホスティング アカウントが 60 秒以内にすべてのスクリプトを強制終了していることです。
スクリプトの制限 すべてのスクリプトには、次のメモリと実行時間の制限があります。
メモリー: 一部の PHP CMS アプリケーションでは、php.ini で設定されているデフォルトよりも大きな memory_limit が必要になる場合があります。この制限は php.ini で変更できますが、最大 64M を超えないようにしてください。
実行時間: すべての PHP/CGI/Perl スクリプトの実行時間は 60 秒に制限されています。その時間内にスクリプトが完了しない場合、スクリプトは強制終了されます。BlueDomino は、カスタム スクリプトが共有ホスティング プラットフォーム上の他の顧客サイトのパフォーマンスに影響を与えることを許可しません。
現在、処理のためにデータを PHP に送信するフラッシュ アップローダーを作成しました。1分もかからないファイルでは完璧に動作しますが、1分以上かかると失敗します:/
この問題を回避する別の方法はありますか? 多分Pythonのような別のプログラミング言語を使用していますか?
out-of-memory - Netty HTTP サーバー、大きなファイルのアップロード、OutOfMemoryError
まず第一に、私の曲がった英語で申し訳ありません:)
大きなファイル (~2Gb) を送受信する Netty http サーバーの作成中に問題が発生しました。そして、誰かの助けや説明をいただければ幸いです。
私のクライアント アプリケーション (Web ブラウザー) は、次のように XMLHttpRequest 経由でファイルを送信します。
サーバー側は次のとおりです。
クラス WebSocketServer:
クラス HttpRequestServerHandler:
中サイズのファイルを送信すると、すべてがうまく機能します。問題は大きなファイル (>300Mb) にあります。しばらくすると処理例外が発生します。
java.lang.OutOfMemoryError: org.jboss.netty.buffer.HeapChannelBuffer.(HeapChannelBuffer.java:47) の Java ヒープ スペース。 org.jboss.netty.buffer.HeapChannelBufferFactory.getBuffer(HeapChannelBufferFactory.java:73) の netty.buffer.ChannelBuffers.buffer(ChannelBuffers.java:139) org.jboss.netty.buffer.DynamicChannelBuffer.ensureWritableBytes(DynamicChannelBuffer.java: 84) org.jboss.netty.buffer.DynamicChannelBuffer.writeBytes(DynamicChannelBuffer.java:239) で org.jboss.netty.buffer.AbstractChannelBuffer.writeBytes(AbstractChannelBuffer.java:457) で org.jboss.netty.buffer.AbstractChannelBuffer org.jboss.netty.handler.codec.http.HttpChunkAggregator の .writeBytes(AbstractChannelBuffer.java:450)。org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:302) で messageReceived(HttpChunkAggregator.java:140) org.jboss.netty.handler.codec.replay.ReplayingDecoder.unfoldAndFireMessageReceived(ReplayingDecoder.java:522) でorg.jboss.netty.handler.codec.replay.ReplayingDecoder.callDecode(ReplayingDecoder.java:506) で org.jboss.netty.handler.codec.replay.ReplayingDecoder.messageReceived(ReplayingDecoder.java:443) で org.jboss org.jboss.netty.channel.socket.nio.NioWorker.read の org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:261) の .netty.channel.Channels.fireMessageReceived(Channels.java:274) (NioWorker.java:351)org.jboss.netty.handler.codec.replay.ReplayingDecoder.messageReceived(ReplayingDecoder. java:443) org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:274) で org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:261) で org.jboss.netty.channel .socket.nio.NioWorker.read(NioWorker.java:351)org.jboss.netty.handler.codec.replay.ReplayingDecoder.messageReceived(ReplayingDecoder. java:443) org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:274) で org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:261) で org.jboss.netty.channel .socket.nio.NioWorker.read(NioWorker.java:351)org.jboss.netty.channel.socket.nio.NioWorker.read(NioWorker.java:351) の fireMessageReceived(Channels.java:261)org.jboss.netty.channel.socket.nio.NioWorker.read(NioWorker.java:351) の fireMessageReceived(Channels.java:261)
私のmessageReceivedハンドラーにさえ到達しません。内部 ChannelBuffer の一部がオーバーフローしていると推測できます。HttpChunkAggregator(1024*1024*1024) パラメータを増やしてみました。しかし、それは役に立ちませんでした。クライアント側で(html5を使用して)ファイルを分割し、これらのチャンクを送信して、サーバーに貼り付けるという1つの解決策しかありません。しかし、それは非常に複雑なようです。それを修正する簡単な方法はありますか (Netty スコープ内)?
ありがとうございました!よろしくお願いします。
android - HTTPPOSTを使用して1MBを超えるファイルを送信する
Androidアプリケーションからにビデオファイルとオーディオファイルを送信しています。これらのファイルの一部は非常に大きくなる可能性があり、ファイルのサイズがほぼWampserver
大きくなると問題が発生する傾向があります。OutofMemory
1MB
各ファイルを個別にバイトストリームに変換します。バイトストリームが大きすぎるため、OutofMemory
。
このエラーの発生を防ぐにはどうすればよいですか?
php - 大きなファイルのアップロードに失敗するphp
友達が曲や小さなファイルをアップロードできる小さなサイトを作成しましたが、ブラウザに「接続リセット」エラーが表示されるため、5 MB を超えるファイルは失敗するという問題があります。
サーバーで設定されている最大ファイル サイズは 2Mb ですが、2.5 ~ 3Mb をアップロードできます。
おそらく、.htaccess で上書きしたためです。
しかし、以前のブラウザーがサーバーにアクセスできないと言ったように、5Mb を超えるファイルのアップロードはまったくアップロードされません。
これはサーバーの問題でしょうか?または私のコードの問題ですか?大規模なアップロードを行うには、何かを変更する必要がありますか?
また、最大投稿サイズと最大ファイル サイズは .htaccess ファイルで 40 MB に設定されています。
ここにウェブサイトがあります http://sharebay.webatu.com/
mp3/flac/aac/m4a/wav/ の 7 MB を超えるファイルをいくつかアップロードしてみてください。
php - 非常に大きなファイル(5GBから15GB)のアップロード
私は非常に大きなファイルのアップロード/ダウンロードを実現するためのさまざまな方法を見つけようとしています。私はnode.jsを初めて使用し、それが私の質問に対する答えかもしれないようですが、飛び込む前に、この方法でファイルのアップロード(5〜15 Gb)をメモリの問題などなしで管理できることを確認する必要があります。テクノロジーとしてphp/rubyまたは.netの使用を検討できます(node.jsについてはよくわかりませんが、機能する場合は、問題を解決するために十分に学習します)。
あなたの意見/経験は何ですか?
ありがとう
java - 大きな添付ファイルを含むメールを送信する方法は? (OutOfMemoryError: Java ヒープ領域)
OutOfMemoryError: Java Heap Space
大きめのアタッチメントを付けようとしたら に出会いました。いくつかの大きなファイル (たとえば 50M) を含む電子メールが送信されると、エラーがスローされます。
コードは次のようになります。
上記の例外がbdSource = new ByteArrayDataSource(iStream, null)
スローされます。「 Javaメールを使用してメモリ不足」を読んだことがありますが、わかりません。大きな添付ファイルをアップロードするにはどうすればよいですか? のようなバッファを定義した場合byte[1024]
、どのようにコーディングしますemail.attach()
か? バッファ内のすべてのデータは同じものを使用する必要がありますfilename
か?
更新:ご親切にありがとうございます。ByteArrayDataSource の代わりに FileDataSource を使用しています。send() 関数に例外はないようです。しかし、まだ大きな添付ファイルを含むメールを送信できません。apache jamesで次のエラーが発生しました。
post - 大きなファイルを含む libCURL マルチパート POST
マルチパート POST リクエストを使用して大きなファイル (>2 GB) をアップロードする必要があります。ソース ファイルには、Unicode 記号を使用して名前を付けることができます。問題は、libcurl が Windows で Unicode wfopen をサポートしていないため、通常の方法ではこのタスクを完了できないことです。
curl_formadd の CURLFORM_STREAM オプションを CURLOPT_READFUNCTION と組み合わせて使用できることがわかりました。ここで、CURLFORM_CONTENTSLENGTH オプションを使用してファイル サイズを手動で設定する必要がありますが、「long long」ファイル サイズを設定する必要がある場合、パラメーターとして「long」のみを受け入れます。curl マニュアルを調べたところ、 CURLOPT_POSTFIELDSIZE_LARGE オプションが見つかりましたが、私の場合は何もしません。マルチパート リクエスト システムはこのパラメータを無視しているようです。Unicode 名や大きなファイルのサポートをあきらめたくありません。
file-upload - Asp.netクライアントからJBossIssueに大きなファイルをアップロードする
すべて、apache-common-fileuploadコンポーネントを使用するJBossアプリケーションがあり、postメソッドでHttpWebRequestを使用するasp.netクライアントから大きなファイルをアップロードできることをテストしました。しかし、アップロードが数回成功した後、JBossコンソールで以下の例外を除いて失敗しました。それをチェックするのを手伝ってください。ありがとう。
これがserver.xmlの内容です。これをチェックしてください 。
Asp.netクライアントコードを編集および追加しました。
私の考え:例外
の根本的な理由は、Stream ended unexpectedly
サーバーに投稿するストリームの長さが、HttpWebRequest.ContentLengthで指定した長さと正確に等しくないことだと思います。
私の質問:
1.HttpWebRequest.ContentLengthの長さが、サーバーに送信した実際のサイズよりも大きいまたは小さい場合はどうなりますか?
SendSingleChunk
2.投稿が失敗した後も実行を続けるとどうなりますか?サーバーはこれら2つのリクエストストリームを同じものとして認識したようです。
c# - ftpwebrequest アップロードを使用した大きなファイルのアップロードが完了しない
私が設計したソフトウェアは、ftp を使用してサーバーにファイルをアップロードします。すべてのアップロードに ftpwebrequest を使用しています。700mb のファイルをアップロードすると、約 500mbs がアップロードされてから停止します。小さなファイルをアップロードすると正常に動作しますが、小さなファイルは正常にアップロードされますが、大きなファイルでは適切に動作したいだけです。メインクライアントの進行状況バーにアップロードの進行状況を報告するバックグラウンドワーカーでアップロードを行いました。バックグラウンド ワーカーが完了すると、バックグラウンド ワーカーの完了関数が実行されます。バックグラウンド ワーカーの完了関数は実行されますが、アップロードは完了せず、クライアントがアップロードを停止し、アップロードが完了したかのようにバックグラウンド ワーカーの完了関数を実行するように、進行状況バーが約 65% で停止します。ここで何がうまくいかない可能性がありますか?
asp.net - asp.net ファイルのアップロード ページの読み込み中にサーバーへの接続がリセットされました
32MB のファイルをアップロードしようとすると、Firefox のページに次のエラーが表示されます。
「接続がリセットされました。ページの読み込み中にサーバーへの接続がリセットされました。」
フォローしてみました。ソリューション -
1. の<system.web>
2. の<system.webserver>
と
それでも同じエラーが発生します。問題は「executionTimeout」に関連していると思います。アプリケーションは、要求に対してこのタイムアウトを設定していません。