私たちのシステムは、サーバーとエージェントで構成されています。エージェントは巨大なバイナリファイルを生成しますが、これはサーバに転送する必要があります。考えるファイルジェネレータからサーバー(Java)への巨大なバイナリファイルのHTTP転送を実装する方法は?
:
- をシステムが他のポートを閉じることができるので、転送は、HTTP上でなければならない2年
- に10Gに成長する可能性がある、今1Gまでのファイルにも対応しなければなりません。
- これはファイル共有システムではなく、エージェントはファイルをサーバーにプッシュするだけで済みます。
- エージェントとサーバーの両方がJavaで記述されています。
- バイナリファイルに機密情報が含まれている可能性があるため、転送は安全でなければなりません。
私は巨大ファイルを転送で私を助けるために技術やライブラリを探しています。私が知っ話題のいくつかは:1を選択する
- 圧縮?私たちはgzipまたはdeflateに制限するものではありません.HTTPトラフィックで最も人気があるからです。私たちの仕事にとってより良い結果をもたらす、珍しい圧縮方式があれば、それもそうです。
- 分割する明らかに、ファイルを複数の並列セッションで分割して転送する必要があります。
- 背景膨大なファイルを転送するのに時間がかかります。それが解決に影響するかどうか
- セキュリティ HTTPSは行く方法ですか?あるいは、データの量があれば、別のアプローチをとるべきでしょうか?
- off-the-shelf私は完全に自分でコード化する(楽しいはずです)が、私の要求を満たす既製のソリューションがあるかどうかという疑問を避けることはできません。
この問題が発生したのは誰ですか?どのように処理されましたか?
ありがとうございました。
EDIT
一部は、転送プロトコルとしてHTTPの選択を質問することができます。同じことは、たとえ同じ企業ネットワーク内にあっても、サーバーとエージェントが互いに離れている可能性があることです。私たちはすでに、顧客が企業ネットワーク内のノードにHTTPポートだけを開いたままにしておくという事実に関連する多くの問題に直面しています。それは私たちに多くの選択肢を残しませんが、HTTPを使用します。 FTPを使用するのは問題ありませんが、HTTP経由でトンネリングする必要があります.FTPのメリットはまだありますか、他の選択肢が有効かどうかという点ではそれは妥協しませんか?私は知らない - アドバイスをしてください。
EDIT2
修正 - HTTPSは常に開いており、時には(常にではない)HTTPは、同様に開いています。しかしそれはそれです。
これは本当に悪い選択です。あなたのデータに最も適した圧縮ソフトウェアを使ってソースを圧縮し、ファイル転送プロトコル/ツールを使用してください(そのうちの何百ものものが利用可能で、暗号化が利用可能なバンチ、パラレル転送キャップ付きのもの) – Mat
私は自分の質問を編集しました。 – mark
FTP over HTTPをトンネリングすると、HTTPのすべての問題が発生し、** FTPのすべての問題が発生します。それはさらに悪いことですが、しないでください。あなたの説明から、大量の機密情報が得られます。これは高い価値があるはずです。あなたの顧客がこのシナリオで安全なファイル転送のためのポートを持っておらず、プレーンテキスト、セッションレス、セキュリティで保護されていないプロトコルのためにポートを開く方が望ましいのであれば、 。 – Mat