java関連の質問です。

簡単なテキストファイルをレンタルサーバに置き、ダウンロードする。
それをローカルで編集処理したあと、そのサーバにアップします。
これらの処理をJAVAで行い、排他制御するにはどういったことをすればいいでしょうか。

ダウン・アップをするクライアントは複数あり、ダウン~アップロードまでが一プロセスです。
アクセスが重なったときに一クライアントのプロセスを排他制御したいのです。
レンタルサーバに関しては、ロリポップ他を考えていました。

ビンゴ直撃には別途ポイントも考えています。

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:2006/11/12 05:27:04
  • 終了:2006/11/19 05:30:03

回答(2件)

id:b-wind No.1

b-wind回答回数3344ベストアンサー獲得回数4402006/11/12 20:25:58

ポイント35pt

おそらく通信には FTP を使う事になると思いますが、

それを制御する為の仕組みは無いので、厳密には不可能に近いと思います。


それをふまえたうえで現実的な解としては、

ロックの為のファイル名を決めておき、プロセス開始前にそのファイルの存在をチェック。

存在すればロックされているので一時停止、もしくは中止。

存在しなければ作成した上でプロセス続行、プロセス終了時に削除でどうでしょうか?

http://q.hatena.ne.jp/1163276824

id:furutanian No.2

furutanian回答回数112ベストアンサー獲得回数142006/11/13 09:32:47

ポイント35pt

ネットワーク越しの更新に対して排他制御するためには工夫が必要です。排他制御の基本をご存じないようであれば、まずは以下のサイトを一読することをお勧めします(私は排他制御に mkdir をよく使います)。

http://x68000.q-e-d.net/~68user/webcgi/lock.html

FTP を使ってファイルを転送するのであれば「ファイル転送処理」と「排他処理を踏まえたファイル更新処理」に分け、別に考えたほうがよいですね。

排他はちゃんとやろうとすると果てしなく大変です。少しでもラクをしたいのであれば、DB, cvs, wiki, webdav, nfs など、あらかじめ複数の人が更新する仕組みを考慮したシステムを流用するのが賢明です。

具体的なファイル転送の方法が決まっているなら、その情報を展開するともう少し具体的なアドバイスをもらえるかもしれません。

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません