Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/delphi/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
错误:使用带有插件HLS采样器的JMeter加载测试HLS_Jmeter_Http Live Streaming_Jmeter Plugins - Fatal编程技术网

错误:使用带有插件HLS采样器的JMeter加载测试HLS

错误:使用带有插件HLS采样器的JMeter加载测试HLS,jmeter,http-live-streaming,jmeter-plugins,Jmeter,Http Live Streaming,Jmeter Plugins,我尝试使用JMeter和HLS采样器测试我的HLS服务器。但是在我的cmd上有一个notif错误。我该怎么办 java.io.FileNotFoundException: http://192.168.2.215/vod/BF1.mp4/chunk.m3u8 at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructo

我尝试使用JMeter和HLS采样器测试我的HLS服务器。但是在我的cmd上有一个notif错误。我该怎么办

java.io.FileNotFoundException: http://192.168.2.215/vod/BF1.mp4/chunk.m3u8
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
        at java.lang.reflect.Constructor.newInstance(Unknown Source)
        at sun.net.www.protocol.http.HttpURLConnection$10.run(Unknown Source)
        at sun.net.www.protocol.http.HttpURLConnection$10.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at sun.net.www.protocol.http.HttpURLConnection.getChainedException(Unknown Source)
        at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(Unknown Source)
        at sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source)
        at com.blazemeter.jmeter.hls.logic.Parser.getBaseUrl(Parser.java:49)
        at com.blazemeter.jmeter.hls.logic.HlsSampler.getPlayList(HlsSampler.java:104)
        at com.blazemeter.jmeter.hls.logic.HlsSampler.sample(HlsSampler.java:156)
        at org.apache.jmeter.threads.JMeterThread.executeSamplePackage(JMeterThread.java:498)
        at org.apache.jmeter.threads.JMeterThread.processSampler(JMeterThread.java:424)
        at org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:255)
        at java.lang.Thread.run(Unknown Source)
Caused by: java.io.FileNotFoundException: http://192.168.2.215/vod/BF1.mp4/chunk.m3u8
        at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(Unknown Source)
        at sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source)
        at java.net.HttpURLConnection.getResponseCode(Unknown Source)
        at com.blazemeter.jmeter.hls.logic.Parser.getBaseUrl(Parser.java:46)
        ... 6 more

有两种可能性:

  • 您的视频流中存在错误,即播放列表引用了不存在的区块URL,请测试是否可以使用普通视频播放器播放视频,即
  • HLS Sampler插件中存在错误,错误地解析初始响应。在这种情况下,请通过联系插件开发人员。同时,您可以使用普通取样器
  • 这是一个bug,它不能处理所有可能的URL,我猜是重定向或相对URL

    我们过去使用它进行了POC,发现有几个案例处理不当,可能导致:

    • 悬而未决的考验,考验永远不会结束
    • 误报(测试标记为失败,但没有实际问题)
    • 许多HLS可能性未得到处理
    • 我们甚至不必谈论直播流,直播流比视频点播复杂得多,而且只适用于极少数简单的情况
    但由于它是一个免费的OSS插件,如果您有时间和能力理解java和jmeter,您可以尝试自己提供补丁

    我认为这个插件可以很好地处理非常简单的情况,但并不是所有现实生活中的可能性

    此外,即使使用它,模拟播放器如何向流媒体服务器请求URL也是非常复杂的,因为您需要模拟暂停、播放视频、延迟

    当然,通常当您想要测试HLS时,您还需要测试至少是另一个更复杂的故事


    最后,您通常需要分析插件所缺少的负载测试。

    我在blazemeter上尝试了30个线程用户使用HTTP请求,没有错误。但当我检查我的服务器(htop&nload)时,没有流量。顺便说一句,我的服务器使用Ubuntu 16.04。