谁知道有什么好工具可以用来在视频流服务器上执行压力测试?我需要测试我的服务器处理5,000+连接的能力。
发布于 2008-09-30 03:27:06
一种选择是使用VLC。您可以在命令行上指定url。(详细信息请参见here )。然后,您可以编写一个简短的shell脚本来打开所有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多播组的成员就足够了(不需要对流做任何事情。通过不对流进行实际解码,可以减少客户端的性能问题)。
我不知道有什么工具可以帮你做到这一点,但是如果你准备编写你自己的实用程序,你可以启动here来了解详细信息。
编辑:第二个选项假设您的客户端计算机上的操作系统具有多播功能。我之所以提到这一点,是因为(在内存中) linux内核在缺省情况下不会这样做,我想省去您的痛苦。:-)
判断(同样是在Linux上)最简单的方法是检查是否存在/proc/net/igmp
。
发布于 2008-09-30 02:43:21
开始下载具有不同连接的相同类型的5000+文件。实际上并不需要播放它们,因为本质上客户端视频播放器、flash、windows media player等都只是下载而已。因此,如果您的服务器能够处理5000+下载,那么您就没有问题了。我敢打赌你的带宽在你服务器之前就用完了。
发布于 2019-11-07 07:55:51
一个新的JMeter插件已经发布,只需使用一个自定义采样器就可以帮助模拟一个高级最小二乘场景。现在,您不需要多个HTTP请求采样器、ForEach控制器或RegEx PostProcessors。这使得整个过程比以前简单得多。
相反,完整的逻辑是无缝封装的,因此您只需关心使用案例:媒体类型、播放时间和网络条件。就这样!该插件是全新的,可以通过JMeter插件管理器进行安装。
您可以在这里了解更多信息:
https://abstracta.us/blog/performance-testing/how-to-run-video-streaming-performance-tests-on-hls/
https://stackoverflow.com/questions/151392
复制相似问题