プロジェクトには主要なDBサーバーがあり、別の場所にインストールされた他のサーバーはそれぞれ独自のローカルデータベースを維持します。すべてのシステムがローカルデータベースをメジャーDB上のどのバージョンにも更新できるようにする必要があります。すべてのサーバーはJava環境を実行します。Javaサーバー間で大きなファイルを転送する良い方法を見つける
シンプルなウェブダウンロードページ、ウェブサービス、FTP、ソケットなど、ファイルを転送する方法はたくさんあるようです。このような状況に適していると思いますか?
一般的な手順は以下のようになります。
1、クライアントがサーバーへのバージョンの文字列を送信します。
2、サーバーはパッチを生成して返します。
(パッチ多分あまりにも巨大なので、それは部品に分離する必要があります)
はと私は考えていることは選択肢の多くは実際にあります手順2.
の内側にあります。
1、私は最初にフェッチする行を数え、分割する必要のある部分の数を計算する必要があります。
そして、私はちょうどクライアントの部分またはリンクのリストを返すべきですか?そして、クライアントは、Webリクエストに基づいて接続するか
2、サーバーデータベースから必要なレコードを取り出し、部分的に取り出し、制限付きの行を取得し、Javaとして返すことができます。 List、ファイルをすぐにシリアル化して、次の部分のメモリを空にして、ファイルのフォルダを取得します。そして私は、ファイルを1つに圧縮して送り返し、クライアントが2度目の要求をしないようにします。
同じバージョンをリクエストしたときに、生成されたパッチファイルを他のクライアント用に保持することができます。
私はすべての方法がうまくいくと思いますが、どちらが良いと思いますか?それとも良い方法を知っていますか?
共有しましょう。