[Linux] webでファイルをアップロードし、そのファイルをLinux上のプログラムで処理するようなことをしたいです。

ファイルの処理はかなり負荷がかかるため、webサーバとは別のマシンにしたいと思っています。
webサーバと、処理マシンはLANで繋ぐ形になると思います。
しかし、webサーバの方にアップロードしたとき、処理マシンのプログラムを動かす方法が思いつきません。
webサーバと、何かの処理マシンとを分けるというのは、雑誌やwebなどで詳細を語らないまでも、分けている場合があったと思うのですが、こういうことは普通は(出来ないorしない)のでしょうか?
出来れば方法も合わせてご回答頂けると助かります。

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:2006/01/21 11:49:29
  • 終了:--

回答(2件)

id:ma-kanoh No.1

ma-kanoh回答回数155ベストアンサー獲得回数42006/01/21 12:11:15

ポイント25pt

いわゆる三階層システム「プレゼン」「コントローラ」「ビジネス」と考えて、

(1)プレゼン層でファイル受信

(2)コントローラ->そのファイルをビジネス層に渡す

(3)ビジネス層はそのファイルを処理して結果をコントローラに

というのは良くあります。普通にあることですが。

単純実装ならば。

(1)tomcatでファイルアップロードのjspを作る

(2)rshで別マシンに送って結果を受けるサーブレットを実装する。

ぐらいかな。

id:router

ご回答ありがとう御座います。

なるほど単純明快ですね。

2006/01/21 13:49:48
id:ito-yu No.2

ito-yu回答回数323ベストアンサー獲得回数142006/01/21 12:14:08

ポイント25pt

SV1=webサーバ、SV2=処理マシンとします。


・ファイルをSV1にHTTPでアップロード

 ↓

・SV1では、アップロードされたファイルをSV2にコピー(a)し、SV2の処理プログラムをキック(b)する。


SV1/2がLinux同士であれば、(a)はscp、(b)はsshでコマンド実行で可能ではないでしょうか。apache起動ユーザにscpさせるのが難しければ、cronでアップロードされたファイルの有無をチェックし、存在すればSV2にscp、とすればいいと思います。

SV1がWindowsサーバーだったりした場合、SV2の該当ディレクトリをsmb共有しておいてそこにコピーし、SV2ではcronでファイルが存在したら処理して削除、でどうでしょう。

id:router

ご回答ありがとう御座います。

可能性が見えてきました。

他の方法もあるか気になるので、待って見ます。

もう出てこないようなので終了します。

ありがとう御座いました。

2006/01/26 02:46:54

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

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

トラックバック

  • webでファイルをアップロードし、そのファイルを、、、 webでファイルをアップロードし、そのファイルを、、、 2006-03-13 16:13:20
    id:ma-kanohさん、id:ito-yuさんどちらも素晴らしい回答ですので、直答は避けてみる。 私なら、rshは好みではありません。 ので、id:ito-yuさんのが好み。 リアルタイム性を求めないなら、 id:ito-y
「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

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

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