目次
ディスカッション(解決策)への返信
ホームページ バックエンド開発 PHPチュートリアル 大きなファイルをアップロードするクライアント

大きなファイルをアップロードするクライアント

Jun 23, 2016 pm 02:38 PM

お聞きしたいのですが、ファイルのアップロードには何を使用しますか?大きなファイルをアップロードできる Web クライアントが必要です。FTP またはその他のプロトコルの場合は、アップロード完了後に http サーバーに通知できる必要があります。または、少なくともサーバーが事前ポスト イベントを持つことができる必要があります
アップロードするには、チャンクをサポートできる必要があります。HTML5 または Flash であることを望んでいます。解決策は、Java アプレットや javaFx を使用しないことです
有料であっても、aspera のように高価ではありません
最も重要なことは、できることです大きなファイルは100Gまでのファイルを指します

サーバー側の場合はphpスクリプトを使用するのが最善です
jqueryファイルのアップロードとpluploadを試しました


ディスカッション(解決策)への返信

実装には flash+php を使用することをお勧めします。サードパーティのライブラリがあります

実装には、flash+php を使用することをお勧めします。サードパーティのライブラリがあります

フラッシュの名前を詳しく教えてください。クライアント?

PHP+Flash 複数ファイルの非同期アップロード
サードパーティのクラス ライブラリ swfupload を参照できます。

実装するには、flash+php を使用することをお勧めします。アップロードされるファイルのサイズを自分で設定できるサードパーティのライブラリがあります。

アップロード サイズ制限は php.ini で設定されます

お聞きしたいのですが、ファイルのアップロードには何を使用しますか?大きなファイルをアップロードできる Web クライアントが必要です。FTP またはその他のプロトコルの場合は、アップロード完了後に http サーバーに通知できる必要があります。または、少なくともサーバーが事前ポスト イベントを持つことができる必要があります
アップロードするには、チャンクをサポートできる必要があります。HTML5 または Flash であることを望んでいます。解決策は、Java アプレットや javaFx を使用しないことです
有料であっても、aspera のように高価ではありません
最も重要なことは、できることです... Flash コントロールを使用して 100G のファイルをアップロードすることは不可能です。100G はおろか、100MB ですら。現在、インターネット上の無料の Flash コントロールはどれもブレークポイント アップロード機能をサポートしていないためです。また、MD5スキャン機能はありません。

お聞きしたいのですが、ファイルのアップロードには何を使用しますか?大きなファイルをアップロードできる Web クライアントが必要です。FTP またはその他のプロトコルの場合は、アップロード完了後に http サーバーに通知できる必要があります。または、少なくともサーバーが事前ポスト イベントを持つことができる必要があります
アップロードするには、チャンクをサポートできる必要があります。HTML5 または Flash であることを望んでいます。解決策は、Java アプレットや javaFx を使用しないことです
有料であっても、aspera のように高価ではありません
最も重要なことは、できることです... 従来の HTML 方式では、非常に大きなファイルをアップロードするニーズを満たすことができなくなりました。 100MB は言うまでもなく、50MB はサーバーにとって非常に大きいため、サービスは専用のソケット接続を開いてファイルがアップロードされるのを待つ必要があるだけでなく、ファイルを保存するために同じサイズのメモリを割り当てる必要があるため、かなりの負荷がかかります。ユーザー数が増加するにつれて、この圧力は幾何級数的に増加します。 Flash を使用する場合でも、現在の Flash はブレークポイント再開操作をサポートしておらず、Flash のアップロード原理も従来の HTML のアップロード原理と同じであるため、機能しません。 Flash を使用して 100MB の画像をアップロードするには、サーバーも 100MB のメモリを割り当てる必要があります。 10 人のユーザーが同時に 100MB のデータをアップロードすると、1G のサーバー メモリが消費されます。
Flash をアップロードすると、ファイル全体がメモリに追加されます。これは深刻な問題です。ユーザーが 5G ファイルをアップロードしたい場合、Flash はすべての 5G ファイルもメモリにロードするためです。これはユーザーの操作体験に重大な影響を与えます。なぜなら、この時点でユーザーのコンピュータは仮死状態になるからです。平均的なユーザーのコンピュータには 2G しか搭載されていないため、メモリ不足またはメモリ オーバーフローが原因で直接ハングします。

一部の友人は、Flash ファイル アップロード コントロールを使用して非常に大きなファイルをアップロードしようとしましたが、アップロード タイムアウトやアップロード エラーが頻繁に発生しました。これは、現在の Flash ファイル アップロード コントロールが従来の HTML アップロード方法と同じテクノロジーを依然として使用しているためです。サーバーが接続を開いて、クライアントがファイルの転送を完了するまで待ちます。ただし、実際のネットワーク環境では、ユーザーのネットワーク速度はわずか 50KB/S で、200MB のファイルをアップロードするのに 2.8 時間かかる場合があります。ただし、サーバーの SESSION 接続がユーザーのために 2.8 時間も待機することは不可能です。これは、パケット損失などの複雑なネットワーク環境を考慮していません。パケットロスやネットワーク異常が発生した場合、ユーザーの以前の 100MB ファイルが無駄に転送されてしまいます。これはユーザーの時間を 1 時間無駄にしていることに相当します。ユーザーに非常に劣悪なエクスペリエンスをもたらします。
サーバーの場合、接続リソースは非常に限られており、サーバーがユーザーを 2.8 時間待機できる場合でも、ユーザーが広いエリアにアクセスし、各ユーザーが接続を占有して長時間かかる場合、サーバーの同時処理能力は低下します。とても低くなってしまいました。他のユーザーが単純な 1KB の HTML ページをリクエストした場合でも、サーバーが前のユーザーのリクエストを処理するまで待たなければなりません。

同時に、Flash は非常に大きなファイルのアップロードのニーズを満たすことができません。非常に大きなファイルをアップロードする必要があるため、データ転送の安定性を確保することが要件の 1 つです。たとえば、ユーザーが 1G ファイルをアップロードし、既に 500MB をアップロードしたとします。このとき、ネットワークが突然切断されました。しかし、ユーザーは、次回ファイルをアップロードするとき、つまり最後にアップロードした位置から送信が開始されることを期待します。 、500MBの位置から送信が開始されます。1つの要件は、Flashではできないことです。

QQ メールボックスの特大添付ファイルのアップロード機能、115 Netdisk、Huawei Netdisk (DBank)、および Kingsoft Express の特大添付ファイルのアップロード コントロールと同様に、これらはすべてコントロールを使用して特大ファイルのアップロード機能を実装しています。これは主に、サーバーへの負荷を軽減し (サーバーの応答時間が速くなり、同時処理能力が強化されます)、サーバーのメモリを節約します (サーバーは各ユーザーのファイルと同じサイズのメモリを割り当てる必要がなくなります)。 、同時にユーザー エクスペリエンスも向上します (ユーザーはネットワーク環境で非常に大きなファイルをアップロードできます)。

もちろん、技術的な観点から、このような有名なインターネット企業は、多数のユーザーをサポートするための分散ファイル ストレージ アーキテクチャの設計も検討しています。ファイル ストレージ サーバーを 1 つにすることはできず、ユーザー数の増加に応じて動的に増加するためです。

一部の友人が言ったように、Flash コントロールが大きなファイルのアップロードの問題を解決できるのであれば、Tencent は QQ メールボックス専用のコントロールの開発にそれほど多くの労力を費やす必要はありません。

お聞きしたいのですが、ファイルのアップロードには何を使用しますか?大きなファイルをアップロードできる Web クライアントが必要です。FTP またはその他のプロトコルの場合は、アップロード完了後に http サーバーに通知できる必要があります。または、少なくともサーバーが事前ポスト イベントを持つことができる必要があります
アップロードするには、チャンクをサポートできる必要があります。HTML5 または Flash であることを望んでいます。解決策は、Java アプレットや javaFx を使用しないことです
有料であっても、aspera のように高価ではありません
最も重要なことは、できることです... インターネット上には、Web の大きなファイルのアップロード ブレークポイント再開コントロールがあります: http://www.cnblogs.com/xproer/archive/2012/10/26/2741264.html
このコントロールは、100G ファイルのブレークポイント再開操作をサポートしています。 、完全な開発ドキュメントを提供し、ファイル MD5 検証をサポートし、ファイルのバッチ アップロードをサポートします。
サポートされているブラウザ: Internet Explorer 6、Internet Explorer 7、Internet Explorer 8、Internet Explorer 9
Maxthon 1.x、Maxthon 2.x、TT ブラウザ、QQ ブラウザ、360 セキュア ブラウザ、
Chrome (Google ブラウザ)、Maxthon3 を確認してください。同じファイルが存在する場合

ファイルを再開

サーバーからファイルリストをロード

ファイルアップロード完了

フォルダーをアップロード
Discuz と統合
ページ呼び出しサンプルコード:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" ><head>	<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />    <title>HTTP断点续传控件与MySQL数据库演示页面(UTF-8)</title>    <link href="HttpUploader/HttpUploader.css" type="text/css" rel="Stylesheet"/>    <script type="text/javascript" charset="utf-8" src="HttpUploader/FileLister.js"></script>    <script type="text/javascript" charset="utf-8" src="HttpUploader/HttpUploader.js"></script>    <script type="text/javascript" charset="utf-8" src="HttpUploader/combinbox.js"></script>    <script type="text/javascript" src="HttpUploader/jquery-1.3.2.min.js"></script>    <script language="javascript" type="text/javascript">    	var cbItemLast = null;    	var cbMgr = new CombinBoxMgr();    	$(document).ready(function()    	{    		cbMgr.LoadInControl("FilePanel");    		cbMgr.Init();    	});    </script></head><body>	<div id="FilePanel"></div></body></html>
ログイン後にコピー

リソースのダウンロード:
cab インストール パッケージ
crx インストール パッケージ
xpi インストール パッケージ
exe インストール パッケージ
開発ドキュメント
アップグレード ログ
ASP.NET (C#) サンプル コード:
ASP.NET-ACCESS の例
ASP.NET-SQL2005 の例
JSP の例コード:
JSP-ACCESS-GB2312 の例
JSP-ACCESS-UTF8 の例
JSP-SqlServer2005-UTF8 の例
JSP-MySQL-UTF8 の例
PHP の例 コード:
PHP-MySQL -UTF8 の例
Chrome、Firefox、IE ブレークポイントの再開コントロールの例 (次の例には、IE32、IE64、Firefox、Chrome プラットフォーム プラグインが統合されています)
ASP.NET-ACCESS の例
ASP.NET-SQL2005 の例
JSP サンプル コード:
JSP-ACCESS-GB2312 の例
JSP-ACCESS -UTF8 の例
JSP-SqlServer2005-UTF8 の例
JSP-MySQL-UTF8 の例
PHP サンプル コード:
PHP-MySQL-UTF8 の例

Chrome、Firefox、IE ブレークポイントの続き 転送制御の例 (次の例にはプラグインが統合されています) IE (x86)、IE (x64)、Firefox、および Chrome プラットフォームの場合)
ASP.NET-ACCESS の例
ASP.NET-SQL2005 の例
JSP-ACCESS-GB2312 の例
JSP-ACCESS -UTF8 の例
JSP-SQL2005- UTF8 の例
JSP-MySQL-UTF8 の例
PHP-MySQL-UTF8 の例


Xproer.HttpUploader5: http://www.cnblogs.com/xproer/archive/2012/10/26 /2741264.html
このコントロールはサポートしています100G ファイルの再開操作、完全な開発ドキュメントの提供、ファイル MD5 検証のサポート、ファイルのバッチ アップロードのサポート。
サポートされているブラウザ: Internet Explorer 6、Internet Explorer 7、Internet Explorer 8、Internet Explorer 9
Maxthon 1.x、Maxthon 2.x、TT ブラウザ、QQ ブラウザ、360 セキュア ブラウザ、
Chrome (Google ブラウザ)、
Maxthon3。開発ドキュメント
アップグレード ログ
ASP.NET (C#) サンプル コード:
ASP.NET-ACCESS サンプル
ASP.NET-SQL2005 サンプル
JSP サンプル コード:
JSP-ACCESS-GB2312 サンプル
JSP-ACCESS-UTF8 サンプル
JSP -SqlServer2005-UTF8 の例
JSP-MySQL-UTF8 の例
PHP サンプル コード:
PHP-MySQL-UTF8 の例
Chrome、Firefox、IE ブレークポイント再開制御の例 (次の例は、IE32、IE64、Firefox、Chrome プラットフォームと統合されています)プラグイン)
ASP.NET-ACCESS の例

ASP.NET-SQL2005 の例

JSP サンプルコード:
JSP-ACCESS-GB2312 の例
JSP-ACCESS-UTF8 の例
JSP-SqlServer2005-UTF8 の例
JSP-MySQL-UTF8例
PHP サンプル コード:
PHP-MySQL-UTF8 サンプル

Chrome、Firefox、および IE ブレークポイント再開制御の例 (次の例には、IE (x86)、IE (x64)、Firefox、および Chrome プラットフォーム用の統合プラグインが含まれています)
ASP.NET-ACCESS の例
ASP.NET-SQL2005 の例
JSP-ACCESS-GB2312 の例
JSP-ACCESS-UTF8 の例
JSP-MySQL-UTF8 の例
PHP-MySQL-UTF8 の例
いいですね、これはユーザーエクスペリエンスが良く、QQメールボックスの大規模な添付ファイルのアップロード機能と同じです。

Flash は非常に大きなファイルをアップロードできません。 10MB程度のファイルをアップロードする場合は問題ありません。

コレクション! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! !

上の階の人たちは野郎ですか?そうでない場合は、ありがとうございますが、この価格であれば、Aspera を購入するのに少しお金を追加してもよいでしょう

ここで、HTML5 ベースのチャンク アップロードの使用を検討できます。主流のブラウザ (Chrome と FF) では、file.slice オブジェクトにサイズ制限があるようです。ファインアップローダーの公式 Web サイトに記載されているのは、最大 4G であるということです。つまり、100G などは非現実的です。コントロールを使いたくないのですが、これがボトルネックになっているのかもしれません。ファイルの切り取りとアップロードをサポートしているのは、優れたアップローダーと plupload だけです。また、どちらも有料です。 。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

PHPとPython:2つの一般的なプログラミング言語を比較します PHPとPython:2つの一般的なプログラミング言語を比較します Apr 14, 2025 am 12:13 AM

PHPとPythonにはそれぞれ独自の利点があり、プロジェクトの要件に従って選択します。 1.PHPは、特にWebサイトの迅速な開発とメンテナンスに適しています。 2。Pythonは、データサイエンス、機械学習、人工知能に適しており、簡潔な構文を備えており、初心者に適しています。

PHPでの安全なパスワードハッシュ(例:Password_hash、password_verify)を説明します。 MD5またはSHA1を使用してみませんか? PHPでの安全なパスワードハッシュ(例:Password_hash、password_verify)を説明します。 MD5またはSHA1を使用してみませんか? Apr 17, 2025 am 12:06 AM

PHPでは、Password_hashとpassword_verify関数を使用して安全なパスワードハッシュを実装する必要があり、MD5またはSHA1を使用しないでください。 1)password_hashセキュリティを強化するために、塩値を含むハッシュを生成します。 2)password_verifyハッシュ値を比較して、パスワードを確認し、セキュリティを確保します。 3)MD5とSHA1は脆弱であり、塩の値が不足しており、最新のパスワードセキュリティには適していません。

アクション中のPHP:実際の例とアプリケーション アクション中のPHP:実際の例とアプリケーション Apr 14, 2025 am 12:19 AM

PHPは、電子商取引、コンテンツ管理システム、API開発で広く使用されています。 1)eコマース:ショッピングカート機能と支払い処理に使用。 2)コンテンツ管理システム:動的コンテンツの生成とユーザー管理に使用されます。 3)API開発:RESTFUL API開発とAPIセキュリティに使用されます。パフォーマンスの最適化とベストプラクティスを通じて、PHPアプリケーションの効率と保守性が向上します。

PHP:Web開発の重要な言語 PHP:Web開発の重要な言語 Apr 13, 2025 am 12:08 AM

PHPは、サーバー側で広く使用されているスクリプト言語で、特にWeb開発に適しています。 1.PHPは、HTMLを埋め込み、HTTP要求と応答を処理し、さまざまなデータベースをサポートできます。 2.PHPは、ダイナミックWebコンテンツ、プロセスフォームデータ、アクセスデータベースなどを生成するために使用され、強力なコミュニティサポートとオープンソースリソースを備えています。 3。PHPは解釈された言語であり、実行プロセスには語彙分析、文法分析、編集、実行が含まれます。 4.PHPは、ユーザー登録システムなどの高度なアプリケーションについてMySQLと組み合わせることができます。 5。PHPをデバッグするときは、error_reporting()やvar_dump()などの関数を使用できます。 6. PHPコードを最適化して、キャッシュメカニズムを使用し、データベースクエリを最適化し、組み込み関数を使用します。 7

PHPの永続的な関連性:それはまだ生きていますか? PHPの永続的な関連性:それはまだ生きていますか? Apr 14, 2025 am 12:12 AM

PHPは依然として動的であり、現代のプログラミングの分野で重要な位置を占めています。 1)PHPのシンプルさと強力なコミュニティサポートにより、Web開発で広く使用されています。 2)その柔軟性と安定性により、Webフォーム、データベース操作、ファイル処理の処理において顕著になります。 3)PHPは、初心者や経験豊富な開発者に適した、常に進化し、最適化しています。

スカラータイプ、リターンタイプ、ユニオンタイプ、ヌル可能なタイプなど、PHPタイプのヒントはどのように機能しますか? スカラータイプ、リターンタイプ、ユニオンタイプ、ヌル可能なタイプなど、PHPタイプのヒントはどのように機能しますか? Apr 17, 2025 am 12:25 AM

PHPタイプは、コードの品質と読みやすさを向上させるためのプロンプトがあります。 1)スカラータイプのヒント:php7.0であるため、基本データ型は、int、floatなどの関数パラメーターで指定できます。 3)ユニオンタイプのプロンプト:PHP8.0であるため、関数パラメーターまたは戻り値で複数のタイプを指定することができます。 4)Nullable Typeプロンプト:null値を含めることができ、null値を返す可能性のある機能を処理できます。

PHPおよびPython:コードの例と比較 PHPおよびPython:コードの例と比較 Apr 15, 2025 am 12:07 AM

PHPとPythonには独自の利点と短所があり、選択はプロジェクトのニーズと個人的な好みに依存します。 1.PHPは、大規模なWebアプリケーションの迅速な開発とメンテナンスに適しています。 2。Pythonは、データサイエンスと機械学習の分野を支配しています。

PHP対Python:違いを理解します PHP対Python:違いを理解します Apr 11, 2025 am 12:15 AM

PHP and Python each have their own advantages, and the choice should be based on project requirements. 1.PHPは、シンプルな構文と高い実行効率を備えたWeb開発に適しています。 2。Pythonは、簡潔な構文とリッチライブラリを備えたデータサイエンスと機械学習に適しています。

See all articles