ビデオ ストリーミング サーバーでストレス テストを実行するために使用できる優れたツールをご存知の方はいませんか? サーバーが 5,000 を超える接続をどの程度適切に処理できるかをテストする必要があります。
ベストアンサー1
1つの選択肢はVLCを使用することです。コマンドラインでURLを指定できます。(ここ詳細については、こちらをご覧ください。その後、5000 個の接続をすべて開くための簡単なシェル スクリプトを作成できます。
たとえば、次の Perl スクリプト (非常に簡単なハック - 実行する前に確認してください。爆発などが発生する可能性があります)
$i = 0;
$myurl = "udp://someurl";
@cmdline = ("/usr/bin/vlc", "");
for( $i = 1; $i <= 5000; $i++ )
{
if( $pid = fork )
{
# parent - ignore
}
elsif( defined $pid )
{
$cmdline[1] = sprintf "%s:%d", $myurl, $i;
exec(@cmdline);
}
# elseif - do more error checking here
}
ビデオ ストリーミング サーバーがマルチキャストを実行している場合は、ソケットを開いて 5000 のマルチキャスト グループのメンバーにするだけで十分です (ストリームに対して何もする必要はありません。ストリームを実際にデコードしないことで、クライアント側でのパフォーマンスの問題が軽減されます)。
これを実行できるツールは知りませんが、独自のユーティリティを作成する場合は、ここ詳細については。
編集: 2 番目のオプションでは、クライアント マシンの OS にマルチキャスト機能があることが前提となります。私がそのことを言及したのは、(記憶によれば) Linux カーネルにはデフォルトでマルチキャスト機能がないため、その苦労を省きたいからです。:-)
簡単に確認する方法は(Linuxの場合)、/proc/net/igmp