- PR -

ファイルコピー

1
投稿者投稿内容
もじゃもじゃ
会議室デビュー日: 2007/06/14
投稿数: 8
投稿日時: 2008-09-07 18:24
お世話になります。

unix環境でjava(最新)でファイルコピー(アップロード?)を考えています。
javaモジュールの配置、および対象ファイルAのコピー元は
サーバ1(XXX.XXX.XXX.XXX)、
対象ファイルAのコピー先は
サーバ2(YYY.YYY.YYY.YYY)
となっています。もちろん各サーバ間のファイル受け渡し権限はあります。

ファイルコピー方法は調べれは幾つか出てきますが、意外とありすぎて
1分毎に2Mのファイルを10ファイルほどコピーしつづける場合、
どの方法がもっとも優れた方法なのかわかりません。

どなたか何かアドバイス等いただけませんでしょうか?
よろしくご返答、ご教授願います。
わたなべ
大ベテラン
会議室デビュー日: 2007/12/09
投稿数: 123
お住まい・勤務地: 札幌
投稿日時: 2008-09-07 19:18
コピー先でJavaプログラムが常駐しているってことでいいですか?

単純なSocket通信でバイナリデータを渡すのが良いのではないでしょうか?
単一方向であれば、ServerがSocketServerを作成し、Client側から接続して転送する方法です。
同時に幾つくらいの転送が行われるかを考えた上で、並列処理で実行できるようにすればパフォーマンスも良くなります。
かつのり
ぬし
会議室デビュー日: 2004/03/18
投稿数: 2015
お住まい・勤務地: 札幌
投稿日時: 2008-09-07 21:09
UNIX環境ならばscpなりrsyncなりのプログラムで行うのをお勧めします。
そのコマンドをRuntime#execでキックすればよいかと思います。

Windows環境でもcygwinあたりでいくらでもテストできますので、
クロスプラットフォームでも問題ありません。

scpやrsyncよりもバグが少なく、より効率的な仕組みを作るスキルがあれば、
それはまた別の話かと思いますが、
プラットフォームでごく当たり前に存在する方法を無視して、
いちいち自作するのは正直お勧めできません。
1

スキルアップ/キャリアアップ(JOB@IT)