当前位置: 首页 > news >正文

SRS srs-bench

1 srs-bench

 音视频压测工具,包括RTMP/FLV/WebRTC/GB28181等,未来还会完善。

SB(SRS Bench) is a set of benchmark and regression test tools, for SRS and other media servers, supports HTTP-FLV, RTMP, HLS, WebRTC and GB28181.

For RTMP/HLS/FLV benchmark, please use branch master.

1下载代码和编译:

git clone -b feature/rtc https://github.com/ossrs/srs-bench.git && 
cd srs-bench && make

编译依赖golang环境 ubuntu16.04安装高版本 golang 

flag provided but not defined: -mod

1.2 golang安装

到官网:All releases - The Go Programming Language查找对应的版本

wget https://www.golangtc.com/static/go/1.9.2/go1.9.2.linux-amd64.tar.gz --no-check-certificate

tar -xvf go1.20.linux-amd64.tar.gz 

vi ~/.bashrc
//设置环境变量

export GOPATH=$HOME/go_1.20/go
export PATH=$PATH:$GOPATH/bin

source ~/.bashrc

//test

go version
go version go1.20 linux/amd64

1.3 更改go源

make

下载依赖报错  

尝试手动下载 失败

go get -u golang.org/x/sys

更改GO源

t@ubuntu:~/go_1.20$ go env -w GOPROXY=https://goproxy.cn,direct

设置完之后,我以为直接生效了,又去go get了一下,发现还是报一样的错,有点失望,原来需要依赖于 go module 功能,即go的环境变量GO111MODULE要打开,如何打开?如下命令即可,在终端执行

go env -w GO111MODULE=on

下载依赖

go mod vendor

1.4 编译srs-bench 

make

编译会生成下面的工具:

  • ./objs/srs_bench 压测,模拟大量客户端的负载测试,支持SRS、GB28181和Janus三种场景。
  • ./objs/srs_test 回归测试(SRS),SRS服务器的回归测试。
  • ./objs/srs_gb28181_test 回归测试(GB28181),GB服务器的回归测试。
  • ./objs/srs_blackbox_test 黑盒测试(SRS),SRS服务器的黑盒测试,也可以换成其他媒体服务器。

Note: 查看工具的全部参数请执行./objs/xx -h

2 负载测试 单机 rtc 能力 

注意 srs-bench分支 不同分支测试目标不同

webrtc: feture/rtc分支  

rtmp;tree/srs-librtmp

2.1 启动srs

./objs/srs -c conf/console.conf

Player for Live

直播播放压测,一个流,很多个播放。

首先,推流到SRS:

2 .2obs推流 rtc

然后,启动压测,比如100个:

2.3 测试用例说明

通过 ./objs/srs_bench -h命令,我们可以查看srs-bench提供了哪些压测的手段:

2.4 压测播放rtc

./objs/srs_bench -sr webrtc://192.168.1.116/live/livestream -nn 100

2.5 sdata查看负载情况

压测过程如何查看srs服务器的性能呢,有两种方式:

  • 直接通过desktop提供的容器状态可视化看板,但是能看到的内容有限
  • 通过docker ps/sdat/top等命令来监测,监测的维度就比较多了

dstat -tglmsn --top-cpu --top-mem --top-io

srs server log 负载信息

srs服务没有开多进程或者多线程来处理高并发 内部通过协程来实现高并发 ,100多播放一路 1280*720  i5cpu 16G内存  cpu已占用 50% 内存剩余2G

2.6 官方压测数据

上述srs  下行播放并发压测比较简单 rtmp hls等压测 参照官网

SRS Server - 高性能、高并发、高扩展性和可读性的网络服务器架构 | SRS

相关文章:

SRS srs-bench

1 srs-bench 音视频压测工具,包括RTMP/FLV/WebRTC/GB28181等,未来还会完善。 SB(SRS Bench) is a set of benchmark and regression test tools, for SRS and other media servers, supports HTTP-FLV, RTMP, HLS, WebRTC and GB28181. For RTMP/HLS/F…...

HackTheBox-Starting Point--Tier 1---Appointment

文章目录 一 题目二 实验过程 一 题目 Tags Web、Databases、Injection、Apache、MariaDB、PHP、SQL、Reconnaissance、SQL Injection译文:Web、数据库、注入、Apache、MariaDB、PHP、SQL、侦察、SQL 注入Connect To attack the target machine, you must be on …...

【工具】Java请求带http重定向的地址 自动进行重定向

【工具】Java请求带http重定向的地址 自动进行重定向 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.net.HttpURLConnection; import java.net.URL;public class HTTPGETWithMultipleHeaders {public static voi…...

接口自动化测试方案

1、引言 1.1 文档版本 版本 作者 审批 备注 V1.0 XXXX 创建测试方案文档 1.2 项目情况 项目名称 XXX 项目版本 V1.0 项目经理 XX 测试人员 XXXXX,XXX 所属部门 XX 备注 1.3 文档目的 本文档主要用于指导XXX-YY项目常用接口自动化测试…...

TikTok文化探索:热议时事与社会话题

在当今数字时代,社交媒体平台如TikTok已经成为了我们日常生活中不可或缺的一部分。它不仅仅是一个娱乐应用,也是一扇窥视世界、探讨时事和社会话题的窗户。本文将深入探讨TikTok如何成为文化探索的平台,热议时事和社会话题,以及它…...

springboot操作nosql的mongodb,或者是如何在mongodb官网创建服务器并进行操作

第一步:在mongodb的官网里面创建云服务器 点进去 这是免费的,由于是一个项目只可以创建一个,这里我已经创建好了 用本地的mongodb服务也是可以的 第二步:点击connect,下载连接mongodb的软件:MongoDBCompass 第三步&am…...

QWEN technical report

通义千问-Qwen技术报告细节分享 - 知乎写在前面大家好,我是刘聪NLP。 阿里在很早前就开源了Qwen-7B模型,但不知道为什么又下架了。就在昨天阿里又开源了Qwen-14B模型(原来的7B模型也放出来了),同时还放出了Qwen的技术报…...

提升MODBUS-RTU通信数据刷新速度的常用方法

SMART PLC的MODBUS-RTU通信请参考下面文章链接: 【精选】PLC MODBUS通信优化、提高通信效率避免权限冲突(程序+算法描述)-CSDN博客MODBUS通讯非常简单、应用也非常广泛,有些老生常谈的问题,这里不再赘述,感兴趣的可以参看我的其它博文:SMART200PLC MODBUS通讯专题_RXXW…...

PyTorch 与 TensorFlow:机器学习框架之战

深度学习框架是简化人工神经网络 (ANN) 开发的重要工具,并且其发展非常迅速。其中,TensorFlow 和 PyTorch 脱颖而出,各自在不同的机器学习领域占有一席之地。但如何为特定项目确定理想的工具呢?本综合指南[1]旨在阐明它们的优点和…...

超简单理解冒泡排序

1.冒泡排序(Bubble Sort) 较简单排序算法。 它会遍历若干次要排列的数列,每次遍历,会从前往后比较相邻两个数的大小。 如果前者比后者大,就交换他们位置。遍历一次最大元素在数列末尾。重复直到数列有序。 那么遍历需要一个变量控制范围。…...

模拟IC设计工程师成长日记

很多IC设计的新人,不知道进入IC设计行业后会有哪些成长和学习的地方。 很多初入IC设计职场的人也都会比较恐慌,成长进步需要一个时间和经验的积累 今天给大家找了一个叫“模拟IC设计“攻城狮”的成长日记供大家参考. 以模拟IC设计工程师的身份进入职场&a…...

修炼k8s+flink+hdfs+dlink(六:学习namespace,service)

一:什么是namespace? 你可以认为namespaces是你kubernetes集群中的虚拟化集群。在一个Kubernetes集群中可以拥有多个命名空间,它们在逻辑上彼此隔离。 他们可以为您和您的团队提供组织,安全甚至性能方面的帮助! 二&a…...

法语导游就业前景如何?

随着国际交流的日益频繁,旅游业正在迅猛发展。尽管全球讲法语的人数并不算多,但讲法语的国家分布广泛。因此,如何成为一名合法的法语导游,以及法语导游的就业前景如何,成为了法语爱好者比较关注的问题。 我们知道&…...

iOS自动混淆测试处理笔记

1 打开 ipa,导出ipa 路径和配置文件路径会自动填充 2 点击 开始自动混淆测试处理 自动混淆测试是针对 oc 类和oc方法这两个模块进行自动混淆ipa,并ipa安装到设备中运行,通过检测运行ipa包是否崩溃,来对oc类和oc方法进行筛选。如果…...

C51--单片机中断

51单片机是单线程模式,需要用到硬件中断。 一、中断系统 中断系统是为使CPU具有对外界紧急事件的实时处理能力而设置的。 当中央处理器CPU正在处理某件事的时候,外界发生了紧急事件请求,要求CPU暂停当前工作,转而去处理这个紧急…...

Linux中关于glibc包导致的服务器死机或者linux命令无法使用的情况

glibc是gnu发布的libc库,即c运行库。glibc是linux系统中最底层的api,几乎其它任何运行库都会依赖于glibc。glibc除了封装linux操作系统所提供的系统服务外,它本身也提供了许多其它一些必要功能服务的实现。由于 glibc 囊括了几乎所有的 UNIX …...

艾泊宇产品战略:华为手机品牌是如何从低端到高端的

华为在过去一直以几百块钱的低端手机为主,但如今已经可以跟苹果一争高下。 这个转变是华为经过了近二十年的艰苦努力才实现的。 我艾泊宇作为一个亲历者深度研究了华为的成长历程,发现这是一个经典的商业教科书案例。 这里面有很多值得今天中国企业学…...

视频批量AI智剪:提升剪辑效率的秘密方法

随着视频内容的爆炸式增长,剪辑师面临着巨大的工作压力。传统的剪辑方法往往效率低下,无法满足快速、高质量的剪辑需求。为了解决这个问题,视频批量AI智剪技术应运而生,成为提升剪辑效率的秘密方法。 视频批量AI智剪是指利用人工…...

linux环境执行jar脚本

一、前言 平常工作中,我们的开发的项目部署到linux环境,以jar包的方式运行,涉及jar包的启动、停止、查看状态等,我们可以通过脚本的方式进行维护,减少自己敲打一长串的命令少敲一个字母或者多敲一个字母,方…...

特权同学FPGA官方全资料包括电子书下载

特权同学FPGA官方全资料包括电子书下载 特权同学倾情奉献海量FPGA学习资料 链接:http://pan.baidu.com/s/1bptgnKF 下载器安装说明 链接:http://pan.baidu.com/s/1dFNXvrV SF-AT7 USB3.0+LVDS+FPGA开发套件 链接:http://pan.baidu.com/s/1c24bVZa SF-HSC USB3.0+LVDS…...

技术萨满祭典:给数据中心献祭机械硬盘

一、仪式的缘起:当测试工程师遇见数据之灵在数字文明的殿堂中,数据中心是承载万物之灵的圣地。而软件测试从业者,正是穿梭于代码与硬件之间的现代萨满。当机械硬盘(HDD)在SSD洪流中逐渐退居幕后,这场为老旧…...

The Dark Art of Low-Light Enhancement: Why Retinex Models Don’t Need Handcrafted Priors Anymore

无先验约束的Retinex模型:PairLIE如何重塑低光增强技术范式 1. 低光增强的技术演进与当前挑战 在计算摄影领域,低光图像增强(Low-light Image Enhancement, LIE)一直是核心难题之一。传统方法主要依赖手工设计的先验知识&#xff…...

Nimbus:一个统一的具身合成数据生成框架

Zeyu He, Yuchang Zhang, Yuanzhen Zhou, Miao Tao, Hengjie Li,∗, Hui Wang, Yang Tian, Jia Zeng, Tai Wang, Wenzhe Cai, Yilun Chen, Ning Gao, Jiangmiao Pang摘要扩大数据规模和多样性对于泛化具身智能至关重要。虽然合成数据生成为昂贵的物理数据采集提供了可扩展的替代…...

Nano Banana API 来了:不到半价享官方同款品质,仅需约 ¥0.10/张!

最近被谷歌新发布的 Nano Banana(Gemini 2.5 Flash Image)图像生成模型 霸屏了。 从手办秒变真人级 Cosplay,到一键统一多图风格,从个性化头像到产品概念设计,甚至连静态画作都能一键生成电影级动态分镜——这波 AI 生…...

自然语言处理助力法律领域AI架构,提升司法服务质量

自然语言处理助力法律领域AI架构:从技术落地到司法服务升级的全链路实践 1. 引言:法律行业的“效率痛点”与NLP的破局之路 1.1 痛点引入:当法律遇到“信息过载”与“专业门槛” 深夜十点的律师办公室里,张律师还在揉着太阳穴核对第三份合同的条款——密密麻麻的法条引用…...

DeepSeek LintCode 3867 · 范围内的数字计数 public int digitsCount(int d, int low, int high)

LintCode 3867 范围内的数字计数 问题分析 计算在区间 [low, high] 中,数字 d 出现的次数。 核心思想:使用数位DP或前缀和思想 • count(low, high) count(0, high) - count(0, low-1) 方法一:逐位统计法(推荐)AC pu…...

告别低效写作:盘点2026年标杆级的AI论文网站

一天写完毕业论文在2026年已不再是天方夜谭。2026年最炸裂、实测能大幅提速的AI论文网站,覆盖选题构思、文献整理、内容生成、格式排版全流程,帮你高效搞定论文写作。 一、全流程王者:一站式搞定论文全链路(一天定稿首选&#xff…...

Fira Code技术揭秘:编程字体连字引擎的深度优化与实战应用

Fira Code技术揭秘:编程字体连字引擎的深度优化与实战应用 【免费下载链接】FiraCode Free monospaced font with programming ligatures 项目地址: https://gitcode.com/GitHub_Trending/fi/FiraCode 在当今的代码编辑环境中,开发者每天需要处理…...

南京四季旅游攻略:最美时节去最美地方

南京四季旅游攻略:最美时节去最美地方 🌸🍃🍂❄️本文作者:南京码农 发布日期:2026年3月26日 关键词:南京旅游、四季景点、旅游攻略、南京必去、季节推荐前言:南京,一座四…...

别再傻傻线性扫描了!用Python+Scikit-learn手把手实现IVFFlat图像相似度搜索

用PythonScikit-learn实现IVFFlat图像搜索引擎:从原理到实战 当你面对十万张未分类的图片库,如何快速找到与目标图片最相似的十张?传统线性扫描需要计算所有图片特征的距离,耗时呈线性增长。本文将手把手教你用IVFFlat算法构建高效…...