mod_perlで開発しています。実行時間や使用メモリに制限を設定し、制限を超えたら強制終了させたい場合、どのようにすればいいでしょうか? phpのmax_execution_timeとmemory_limitに該当するものを教えてください。

回答の条件
  • 1人1回まで
  • 登録:
  • 終了:2009/03/04 07:59:23
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

ベストアンサー

id:rryu No.2

回答回数30ベストアンサー獲得回数2

ポイント100pt

Apache::Resource(mod_perl2ならApache2::Resource)を使って、

httpd.confに以下のように設定することで制限できます。

PerlModule Apache::Resource
# 確保できるメモリ量を最大32MBに制限する
PerlSetEnv PERL_RLIMIT_DATA 32
# 最大実行時間を120秒に制限する
PerlSetEnv PERL_RLIMIT_CPU 120

詳細は以下をご覧ください。

http://perl.apache.org/docs/1.0/api/Apache/Resource.html

http://perl.apache.org/docs/2.0/api/Apache2/Resource.html

その他の回答1件)

id:niwa-mikiho No.1

回答回数516ベストアンサー獲得回数40

ポイント10pt

http://d.hatena.ne.jp/naoya/20080212/1202830671

こちらのサイトを参考にして、CGI の中から使用メモリを知るようにします。

そして使用メモリが希望する制限値に達したら

exit;

します。

※ exit(); ではないので注意

exit; とするとプロセスは終了して、再び再起動されます。

id:rryu No.2

回答回数30ベストアンサー獲得回数2ここでベストアンサー

ポイント100pt

Apache::Resource(mod_perl2ならApache2::Resource)を使って、

httpd.confに以下のように設定することで制限できます。

PerlModule Apache::Resource
# 確保できるメモリ量を最大32MBに制限する
PerlSetEnv PERL_RLIMIT_DATA 32
# 最大実行時間を120秒に制限する
PerlSetEnv PERL_RLIMIT_CPU 120

詳細は以下をご覧ください。

http://perl.apache.org/docs/1.0/api/Apache/Resource.html

http://perl.apache.org/docs/2.0/api/Apache2/Resource.html

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

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

トラックバック

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

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

回答リクエストを送信したユーザーはいません