Rスクリプトを実行するWebアプリケーションを作成しようとしています。 私はこれを実現するためにphp shell_exec()を使用する予定です。PHPのexec()は、コマンドラインでRscriptを正常に実行しますが、ブラウザでは動作しません。
私は、コマンドラインを通してそれを実行し、この <?php echo shell_exec("Rscript /var/www/html/demo/MyRScript.R"); ?>
のようなテストスクリプトを書きました。 php test.php
、それは右出力を与える、私はまたhtop
を通して観察し、プロセスが数分のために100%のCPUを使用していたことがわかりました。
しかし、私はブラウザを通して、アドレスhttp://myURL/demo/test.php
を通してそれを訪問することを試みました。それは正しく実行されませんでした、私のRスクリプトonbrief Off On FALSE 405 0 TRUE 0 405 petitioner P R FALSE 0 396 TRUE 414 0
の最初の数行だけを提供し、すぐに停止しました。私はそのプロセスをhtop
で見つけることができません。
私はls
,rm
のような他の単純なコマンドラインを試しましたが、それらはすべてコマンドラインとWebアプリケーションの両方で正しく動作します。
私は何が間違っているのか分かりません。それはプロセスがCPUを必要以上に消費するので、Webによって呼び出された場合、いくつかのメカニズムが終了させることができますか?
また、問題を見つけるのに役立つデバッグツールや方法がある場合は、それを使用してください。
これは私の情報が十分かどうかわからない、スタックオーバーフローに関する私の最初の質問です。問題に取り組むために必要な他の情報があるかどうか教えてください。
ありがとうございました。
CMDはWindowsのシェルです。 Linuxとは関係ありません。 –
opps、私はコマンドラインで同じことだと思った。 –
コマンドラインタグがありますが、有用ではないようです。 –