流媒体压力测试工具—推拉流
为方便流媒体服务端的压力测试,向大家推荐一套流媒体的压力测试工具(Srs-bench),希望对从事流媒体测试或者对流媒体感兴趣的同学有所帮助~
Srs-bench
1.支持RTMP推流测试,一个进程支持500个并发。执行程序:./objs/sb_rtmp_publish
2.支持RTMP拉流测试,一个进程支持5k并发。执行程序:./objs/sb_rtmp_load
3.支持HTTP负载测试,所有并发重复下载一个HTTP文件。执行程序:./objs/sb_http_load
4.支持HLS解析和测试,下载ts片后等待一个切片长度,模拟客户端。支持HLS点播和直播。执行程序:./objs/sb_hls_load
安装篇
1.在linux环境下载St-load源码包
[root@test /]# git clone https://github.com/winlinvip/srs-bench.git
2.对源码进行编译
git clone https://github.com/simple-rtmp-server/srs-bench.git &&
cd srs-bench && ./configure && make &&
./objs/sb_rtmp_load -c 1 -r rtmp://127.0.0.1:1935/live/livestream
编译完成后在objs目录下生成可执行文件
推流篇
1.推流前准备工作,编辑nginx.conf的RTMP层
2.模拟单路RTMP推流
./sb_rtmp_publish -i /usr/local/ffmpeg/cnlzd.flv -c 1 -r rtmp://127.0.0.1/live/livestream
3.模拟多路RTMP推流
./sb_rtmp_publish -i /usr/local/ffmpeg/cnlzd.flv -c 10 -r rtmp://127.0.0.1/live/livestream_{i}
常用参数说明:
-i 设定输入流
-c 负载个数,默认:1
-r 后面接每个测试的url地址,等同于 --url URL
-s 线程启动时间 defaut:5.00 0表示没有延迟
注意:sb_rtmp_publish只可以推送.flv格式的视频
拉流篇
1.RTMP
RTMP是Real Time Messaging Protocol(实时消息传输协议)的首字母缩写。RTMP是一种设计用来进行实时数据通信的网络协议,主要用来在Flash/AIR平台和支持RTMP协议的流媒体/交互服务器之间进行音视频和数据通信。
拉流:
./sb_rtmp_load -c 1 -r rtmp://127.0.0.1:1935/live/livestream
2.HTTP
HTTP是一个属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信息系统。在最新一代的超文本标识语言HTML5中,视频文件的点播,同样也采用了HTTP作为其承载协议。
拉流:
./sb_http_load -c 1 -r http://127.0.0.1:8081/live/livestream
3.HLS
HLS (HTTP Live Streaming),Apple的动态码率自适应技术。主要用于PC和Apple终端的音视频服务。包括一个m3u(8)的索引文件和TS媒体分片文件。
分段策略:
HLS的分段策略,基本上推荐是10秒一个分片,当然,具体时间还要根据切片的实际时长做标注。通常来说,为了缓存等方面的原因,在索引文件中会保留最新的三个分片地址,以类似“滑动窗口”的形式,进行更新。
m3u8文件:
m3u8是HTTP Live Streaming直播的索引文件。m3u8基本上可以认为就是.m3u格式文件,区别在于,m3u8文件使用UTF-8字符编码。
#EXTM3U m3u文件头,必须放在第一行
#EXT-X-MEDIA-SEQUENCE:7 第一个TS分片的序列号
#EXT-X-TARGETDURATION:15 每个分片TS最大时长
#EXTINF:15.099 extra info分片TS的信息
HLS拉流:
./sb_hls_load -c 1 -r http://127.0.0.1:8081/hls/livestream/index.m3u8
流媒体压力测试工具—推拉流相关推荐
- windows 下用开源流媒体压力测试工具 rtmpstress 测试RTMP媒体服务器负载性能
最近笔者的朋友需要部署流媒体服务作运营,从国外购买了几套流媒体服务器软件,该流媒体服务器软件是基于java开发的,他向笔者咨询,如何检测该流媒体服务器软件是否能支持1000以上并发,笔者建议找一个RT ...
- 从0-1开始 测试ZLMediaKit推拉流性能、延时性能
流媒体开发系列文章 文章目录 流媒体开发系列文章 前言 一.环境准备? 二.拉流测试过程 三.推流测试过程 四.延时测试 五.延时澄清 流.延时本质 总结 前言 目前.比较有名的流媒体服务器有ZLMe ...
- 音视频学习之rtsp推拉流学习2(流媒体服务器ZLMediaKit)
公司项目需要实现一个只是rtsp推流和rtsp拉流的业务机制,据说ZLMediaKit能满足rtsp推拉流的相关业务. 对ZLMediaKit流媒体服务器进行安装以及了解. 0:从开源库Readme中 ...
- 开源流媒体解决方案,流媒体服务器,推拉流,直播平台,SRS,WebRTC,移动端流媒体,网络会议,优秀博客资源等分享
开源流媒体解决方案,流媒体服务器,推拉流,直播平台,SRS,WebRTC,移动端流媒体,网络会议,优秀博客资源等分享 一.优秀的流媒体博客资源 1.1 EasyNVR:专注于安防视频互联网化的技术 1 ...
- SRS流媒体服务器——WebRTC推拉流演示
SRS流媒体服务器--WebRTC推拉流 目录 WebRTC推拉流配置 WebRTC拉流演示 WebRTC推流演示 SRS官方WebRTC文档:https://github.com/ossrs/srs ...
- 视频直播技术干货:一文读懂主流视频直播系统的推拉流架构、传输协议等
1.引言 随着移动网络网速的提升与资费的降低,视频直播作为一个新的娱乐方式已经被越来越多的用户逐渐接受.特别是最近这几年,视频直播已经不仅仅被运用在传统的秀场.游戏类板块,更是作为电商的一种新模式得到 ...
- 视频直播技术分享:一文读懂主流视频直播系统的推拉流架构、传输协议等
本文由蘑菇街前端开发工程师"三体"分享,原题"蘑菇街云端直播探索--启航篇",有修订. 1.引言 随着移动网络网速的提升与资费的降低,视频直播作为一个新的娱乐方 ...
- 容器单机编排工具 Docker Compose,swap 限制,配置默认的CFS调度程序,Stress-ng 压力测试工具,docker官网镜像上传,及阿里云镜像上传,Docker 的资源限制
目录 Docker Compose介绍 有版本问题 一键生成 docker-compose.yml docker官网镜像上传,及阿里云镜像上传 Docker 之分布式仓库 Harbor Docke ...
- java 阿里云直播配置及推拉流地址获取
一.开通阿里云直播 首先进入阿里云直播产品主页:https://www.aliyun.com/product/live . 点击下方的"立即开通". 如果是还未注册的用户请按照页面 ...
- ab压力测试工具linux,【Linux】ApacheBench(ab)压力测试工具
AB的简介 ab是apachebench命令的缩写. ab是apache自带的压力测试工具.ab非常实用,它不仅可以对apache服务器进行网站访问压力测试,也可以对或其它类型的服务器进行压力测试.比 ...
最新文章
- linux elf 文件加密
- C语言字符串字母移位
- 基于DirectUI技术开发的发卡系统
- 计算机应用技术的创新
- 【Pytorch神经网络理论篇】 09 神经网络模块中的损失函数
- 思维碰撞!谷歌提出ViTGAN,用视觉Transformer训练GAN
- PHP设计模式——装饰器模式
- 钉钉现身数博会:增长200% 年内要覆盖450万家企业组织
- Excel常用功能总结
- 计算机软件lumion的使用例子,Lumion怎么用?BIM软件教学:带你掌握Lumion实战应用...
- Thymeleaf模板引擎使用详解
- 计算机相关扩展活动战队名字,有诗意的战队名字大全
- 通信算法之九:4FSK调制解调仿真链路
- python牛顿环测量曲率半径
- macOS 如何游玩Renpy游戏
- 2020年数学建模国赛C题
- Windows 10 自带App无法使用,打开闪退
- MATLAB参数估计
- 企业是否需要引入OA系统要考虑的几个问题
- php riak,PHP操作Riak
热门文章
- JAVA编译器eclipse的安装教程
- 《通用规范汉字表》背景知识词条
- 虽然不舍但是事实 —— 纪念下 JavaEye
- 手机型号JSON数据
- CheckBox多选按钮实现CompoundButton.OnCheckedChangeListener
- ShellExecuteEx and SHELLEXECUTEINFO and ShellExecute
- 数据结构试卷及答案(五)
- nexus3私库环境搭建(maven,yum,apt,nodejs)
- 突击Mercurial SCM(HG)3---撤销操作
- Jad批量反编译class