0

IIS で作業しなければならない Web サイトを Perl でプロファイリングしようとしています。ウェブサイトはを使用していCatalystます。私はDevel::NYTProfそれをプロファイリングするために使用しています。

デフォルトでは、プロファイル ファイルは に書き込まれ./nytprof.outます。perl の起動や引数の受け渡しに使用するコマンド ラインにアクセスできません ( use Devel::NYTProfperl ファイルでプロファイリングを有効にするために使用します)。

しかし、ファイルが見つかりません… どこにあるかわかりますか? NYTProf で自分の Web サイトをより適切にプロファイリングするにはどうすればよいですか?

4

1 に答える 1

1

IIS のことだと思います。

Web サーバーを実行しているユーザーに、可能性のあるフォルダーへの書き込み権限があることを確認しましたか? IANONUSR (IIRC) などとして実行されていましたが、明らかな理由からアクセス許可が非常に制御されていました。

IIS FastCGI モジュールを使用すると、FastCGI プロセスの環境変数を設定できます。これにより、NYTPROF の out_file を設定できるはずです。他のすべてが失敗した場合は、NYTPROF で Run.pm をハックして場所をそのように変更することができます。

あなたの努力に敬意を表したいと思います。おそらく、アプリケーションを Linux で実行できるように移植するだけです。Linux で初めて NYTProf を動作させるのは非常に困難でした。特にプロセスを正常に終了させる必要があるため、特定の URL を取得したときに FastCGI プロセスを終了させるメソッドが追加されました。死。

つまり、NYTProf は Linux 上で努力する価値があり、膨大な量の CPU を消費している正規表現を追跡することができ、99.9% の確率で呼び出す必要さえありませんでした。Windows での経験は「フォーク」がパフォーマンス キラーでしたが、IIS の時代から Microsoft はそれをいくらか修正したと思います。

于 2014-07-09T21:55:00.977 に答える