5

ユーザーが複数のファイルを選択できるフレックスアップローダーに取り組んでいます。

ファイルがキューに (一度に 1 つずつ) アップロードされると問題なく動作しますが、一度に 2 つのファイルをアップロードしようとするとすぐに問題が発生します。

ファイルが頻繁にロックされ、他のすべてのファイルがアップロードされるまで 1% のままになるか、まったく完了しないようです。一度に複数のファイルがアップロードされることはありません。

Flex で一度に複数のファイルで .upload を呼び出すと問題がありますか?

4

5 に答える 5

2

残念ながら、ホストあたりのアクティブな接続数は 2 (ブラウザーによって異なります) というブラウザーの制限です。一度にアクティブになるのは 2 つのアップロードのみで、もう 1 つのアップロードはキューに入れられます。通常、これは実際には問題にはなりませんが、アップロードされたファイルがかなり大きい場合、他のアップロードは開始されていなくてもタイムアウトになります。2回のアップロード(upl1.mydomain.com、upl2.mydomain.com)ごとにサブドメインを使用する回避策がありますが、テストできませんでしたが、うまくいくはずです。

参考文献: http://anirudhs.chaosnet.org/blog/2008.06.17.htmlおよびhttp://www.ajaxperformance.com/2006/12/18/circumventing-browser-connection-limits-for-fun-and-利益/ (実際には最初のリンクから取得できます)。

また、セキュリティ モデルでは、マウス クリックの結果として (FileReference の) アップロード メソッドを呼び出す必要があるため、おそらくフラッシュでアップロードをキューに入れることはできません。

于 2010-02-04T10:40:41.667 に答える
0

マルチタスクをシミュレートするもう1つの方法は、チャンクによるダウンロード/アップロードを行い、callLater()を使用して順次実行することです。これは、初期のWindows協調マルチタスクの複製になります

于 2010-03-16T11:57:51.450 に答える
0

問題は、Flex がバックエンドに接続するモデルにあります。HttpService と Remoting を使用すると、Flex クライアントはサーバーへの Http 接続を開きます。サーバー上の同じサーブレット/サービスに接続している場合、同じ接続が使用され、問題が発生する可能性があります。

簡単なテストとして、同じサーブレットの 2 つのインスタンスを作成し、2 つのアップロードのために 2 つのサーブレットにアップロード リクエストを送信してみてください。それはうまくいくはずです。

于 2010-06-07T03:26:29.370 に答える
0

アップロード スクリプトをアップロード クラスとして作成すると役立つ場合があります。つまり、アップロード スクリプトが php または asp にある場合は、そのスクリプトのクラスを作成して、各リクエストがそれぞれの一意のオブジェクトに対応し、ファイルを同時にアップロードできるようにします...

于 2010-07-27T09:13:17.273 に答える
0

あなたの質問に対する直接的な答えはありませんが、gmail アップローダーが思い浮かびます。オープンソースであるswfupload(更新されたリンク)を使用しているため、おそらくソースから理解できます。

この回答には詳細があります。

于 2010-02-03T21:17:35.423 に答える