- ベストアンサー
perlプログラムの連続起動方法
perlのバッチプログラムをレンタルサーバー(ロリポップ)で動かそうとしているのですが、サーバーの制約により処理が途中で中断されてしまいます。 サーバーの制約とは30秒を超える処理を起動してはならないというものです。 では、入力データ量を1プログラムあたり30秒以内に収まる範囲に分割し、プログラムを連続して起動することで制約を回避しようと思うのですが、プログラム起動の方法がわかりません。 プログラム終了をトリガとして後続プログラムを起動する仕組みの実現方法を教えてください。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
> プログラム終了をトリガとして後続プログラムを起動する仕組みの実現方法 > を教えてください。 こういう方法ではありませんが、プログラムから Location: ヘッダを 返すなどの方法で、クライアントが後続のプログラムをキックするよう にしてはいかがでしょうか。
その他の回答 (1)
- genkivogue
- ベストアンサー率22% (4/18)
回答No.2
ロリポップということなので、Webサーバのタイムアウトが30秒設定なのだと思います。 とすると、Perl内部で連続起動することで処理を分断してもダメなんじゃないかと。つまり、一度ブラウザに結果を返さないといけないのではないかと思います。 なので、t-okuraさんの回答のようにLocationで再度CGIを呼び出すようにするとかAjaxにするとかの方法になるかと思います。 たぶん、MovableTypeで記事を再構築する時に処理を分割しているのが参考になりやすいかと思います。
質問者
お礼
回答していただき、ありがとうございました。 MovableTypeとはこれまた初耳です、参考にしてみます。
お礼
回答していただき、ありがとうございました。 Locationとは初耳ですが、勉強してみます。