2011-06-06 10 views
2

私はストレステストをしたいコマンドラインのperlスクリプトを持っています。基本的に私がしたいのは、同じスクリプトの複数のインスタンスを並行して実行して、私たちのマシンが応答しなくなった時点を知ることができるようにすることです。コマンドラインアプリケーションのストレステスト

$ prog > output1.txt 2>err1.txt & \ 
    prog > output2.txt 2>err2.txt & 
    . 
    . 
    . 
    . 

をしてから、私は、完成したインスタンスを参照するために、PSをチェックしなかったのです:

は現在、私はこのような何かをしています。このプロセスを自動化できるオープンソースのアプリケーションはありますか? Webインターフェイスを使用することをお勧めしますか?

答えて

0

なぜスクリプトを自動的に実行するためにcrontabやスケジュールされたタスクを使用しないのですか?

出力を自動的に解析するために何かを書くことができます。

3

あなたは並行してコマンドを実行するxargsのを使用することができます。

seq 1 100 | xargs -n 1 -P 0 -I{} sh -c 'prog > output{}.txt 2>err{}.txt' 

これは、並行して100個のインスタンスを実行します。

より良いテストフレームワーク( 'spawn'による並列テストを含む)のために、Expectを見てください。 GNUは、CPUコアあたり1つのPROG実行され、これを平行にして

0

:あなたはCPUコアあたり10のprogsパッケージを実行するために弱々しい場合

seq 1 1000 | parallel prog \> output{}.txt 2\>err{}.txt 

は行います

seq 1 1000 | parallel -j1000% prog \> output{}.txt 2\>err{}.txt 

ウォッチより多くを学ぶためのイントロビデオ: http://www.youtube.com/watch?v=OpaiGYxkSuQ

関連する問題