st-load 使用记录

3 篇文章 0 订阅

项目上用到了rtmp,在原来的基础上改吧改吧
调试完了之后,能跑,想测试一下性能
使用固定端口的socket接收推流,网页端播放
找了找,说st-load的比较多, 最开始想自己编个win版
试了试,不行,因为有个依赖库,state threads, 这个库不支持win
改动起来比较麻烦,就算了

linux下,编译相当容易,congifure,make之后就好了,缺啥装啥就好了

运行, 一般使用下面的命令
./sb_rtmp_load -c 100 -r rtmp://192.168.241.217:1935/app/{i} -m 5

-c 表示连接数
-r 连接地址 ,默认需要写固定地址,我是根据推流代码,自己改造了下,可以每个任务
拉一个流
-m  报告时间,单位s, 默认好像是30s一次吧,太慢了

报告内容如下图:

threads,线程数量

alive, 活跃线程数量吧,这个始终跟threads的值一致,不太确定到底什么含义

duration,时间,从开始到现在的时间

nread, 接收的速度,默认的是按M来显示的,但是我这边rtmp播的都是cif大小的,每个占用带宽很小,看的不方便

所以在os目录下的htl_os_st.cpp中,对StStatistic::DoReport改造了下,换算成kB/s了

nwrite,写速度

tasks,任务数,etasks,错误的任务数,

stasks,子任务数,estasks,子任务错误任务数

对我来说,比较有用的就是nread和etasks了,其他的不太关心

推流没有用st-load这个,主要是推流的数据格式要按照1077协议,与rtp有些不一致,不能直接推流,所以用的是自己写的模拟推流工具

实际测试结果

只看网络流量来判断,单socket,支持100路左右应该没问题,但卡顿不卡顿就不好说了

参考链接:
https://www.testwo.com/article/963

  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
rtmp服务器压力测试工具 [root@localhost ~]# yum install git unzip patch gcc gcc-c++ make [root@localhost ~]# git clone https://github.com/rzrobert/st-load-master.git [root@localhost st-load]# ./configure [root@localhost st-load]# make [root@localhost st-load]# ls objs/ http-parser-2.1 src st_hls_load st_rtmp_load st_rtmp_publish Makefile st-1.9 st_http_load st_rtmp_load_fast [root@localhost st-load]# 模拟RTMP用户 ./st_rtmp_load -c 1 -r rtmp://127.0.0.1:1935/live/livestream 模拟HLS直播用户 ./st_hls_load -c 1 -r http://127.0.0.1:3080/hls/hls.m3u8 模拟HSL点播用户 ./st_hls_load -c 10000 -o -r http://127.0.0.1:3080/hls/hls.m3u8 模拟RTMP推流用户 ./st_rtmp_publish -i doc/source.200kbps.768×320.flv -c 1 -r rtmp://127.0.0.1:1935/live/livestream 模拟RTMP多路推流用户 ./st_rtmp_publish -i doc/source.200kbps.768×320.flv -c 1000 -r rtmp://127.0.0.1:1935/live/livestream_{i} 支持RTMP流播放测试,一个进程支持5k并发 支持RTMP流推流测试,一个进程支持500个并发。 build ok, you can: ./objs/sb_http_load ./objs/sb_hls_load ./objs/sb_rtmp_load ./objs/sb_rtmp_load_fast ./objs/sb_rtmp_publish Examples: 1. start a client ./objs/sb_rtmp_load_fast -c 1 -r rtmp://127.0.0.1:1935/live/livestream 2. start 1000 clients ./objs/sb_rtmp_load_fast -c 1000 -r rtmp://127.0.0.1:1935/live/livestream 3. start 10000 clients ./objs/sb_rtmp_load_fast -c 10000 -r rtmp://127.0.0.1:1935/live/livestream 4. start 100000 clients ./objs/sb_rtmp_load_fast -c 100000 -r rtmp://127.0.0.1:1935/live/livestream 实例: ./objs/sb_rtmp_load -c 500 -r rtmp://172.17.14.88:1935/live/BHIP91_172.17.17.185_1 ./objs/sb_hls_load -c 1 -r http://172.17.14.88:10000/hls/BHIP91_172.17.17.183_1_sd.m3u8 Examples: 1. start a client ./objs/sb_hls_load -c 1 -r http://127.0.0.1:3080/hls/hls.m3u8 2. start 1000 clients ./objs/sb_hls_load -c 1000 -r http://127.0.0.1:3080/hls/hls.m3u8 3. start 10000 clients ./objs/sb_hls_load -c 10000 -r http://127.0.0.1:3080/hls/hls.m3u8 4. start 100000 clients ./objs/sb_hls_load -c 100000 -r http://127.0.0.1:3080/hls/hls.m3u8 5. start 10000 vod clients ./objs/sb_hls_load -c 10000 -o -r http://127.0.0.1:3080/hls/hls.m3u8

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值