如何对视频流服务器进行压力测试?

时间:2008-09-30 01:14:08

标签: testing video streaming

有谁知道我可以用来在视频流服务器上执行压力测试的任何好工具?我需要测试我的服务器处理5,000多个连接的程度。

6 个答案:

答案 0 :(得分:4)

一种选择是使用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

答案 1 :(得分:2)

开始下载5000多个具有不同连接的相同类型的文件。真的不需要玩它们,因为基本上客户端视频播放器,闪存,Windows媒体播放器等只会进行下载。因此,如果您的服务器可以处理5000+下载,您将没事。我敢打赌,在服务器之前,你的带宽会给出。

答案 2 :(得分:1)

对于基础架构,您可以使用JMeter SAAS或您自己的云服务器来克服进样器可能出现的网络问题。

要重现用户体验并获得有关用户体验的宝贵指标,您可以使用Apache JMeter +此commercial plugin来模拟玩家的行为而无需任何脚本:

此插件还提供模拟Adaptive Bitrate Streaming

的功能

免责声明:我们支持开发此解决方案

答案 3 :(得分:0)

我也在寻找相同的答案,我遇到以下工具可能会帮助某人http://www.radview.com/Solutions/multimedia-load-testing.aspx

此工具用于测试视频流。希望它可以帮助某人。如果我有更好的答案,我会更新答案。

感谢。

答案 4 :(得分:0)

已发布了用于JMeter的新插件,以通过仅使用一个自定义采样器来帮助模拟HLS场景。现在,您不需要多个HTTP请求采样器,ForEach控制器或RegEx后处理器。这使整个过程比以前简单得多。

相反,完整的逻辑被无缝封装,因此您只需要关心用例:媒体类型,播放时间和网络条件。而已!该插件是全新的,可以通过JMeter插件管理器进行安装。

您可以在此处了解更多信息:

https://abstracta.us/blog/performance-testing/how-to-run-video-streaming-performance-tests-on-hls/

答案 5 :(得分:-1)

HLS Analyzer软件可用于对HTTP Live Streaming服务器进行压力测试并监控下载性能。

相关问题