专栏电商日志财经减肥爱情
投稿投诉
爱情常识
搭配分娩
减肥两性
孕期塑形
财经教案
论文美文
日志体育
养生学堂
电商科学
头戴业界
专栏星座
用品音乐

SRS5优化如何将DVR性能提升一倍

  前言
  SRS支持将直播录制为VoD文件,在压测时,如果流路数很多,会出现CPU消耗很多的问题。
  原因是写入较小视频包时,SRS使用了write,由于没有缓冲能力,导致频繁的系统调用和磁盘繁忙。
  优化方案,可以选择fwrite(v5。0。133),或者老版本用内存盘方案,可将DVR性能提升一倍以上。环境
  SRS服务器配置如下:CPU:INTELXeon4110双路16和32线程内存:32G网卡:10Gb磁盘:两块980G的SSD盘做成RAID0(可用空间共1。8T)操作系统:CentOS7。6。流码率:3Mbps
  这里需要说明一下,采用SSD盘主要是为了确保磁盘性能足够,以确保能够支撑大的并发压力,从而在大并发压测的情况下观察系统性能情况,如果本身磁盘IO性能比较低下,大量的IO等待可能导致观察不到CPU瓶颈的现象。
  另外,在我的测试环境中,SRS经过了多进程改造,能够支持推流进来后自动将不同的流均衡到不同的SRS进程上面,从而能够充分利用服务器多核的能力,但是由此得出的结论同样适合于单进程SRS。
  SRS开启DVR录存功能,使用如下命令启动SRS:envSRSLISTEN1935SRSMAXCONNECTIONS3000SRSDAEMONoffSRSSRSLOGTANKconsoleSRSHTTPAPIENABLEDonSRSVHOSTDVRENABLEDon。objssrse
  压测工具,用srsbench套件中的sbrtmppublish模拟推流客户端进行大并发量推流模拟,一台机器压测能力不够可以开启多台机器进行压测。。objssbrtmppublishidocsource。200kbps。768x320。flvc100rrtmp:127。0。0。1:1935livelivestream{i}
  启动srs后,用压测工具进行压测,观察测试过程中的CPU、网络IO、磁盘IO相关数据,并进行对比。写入SSDDisk
  SRS优化前,默认的方式就是使用write方法,直接写入磁盘。测试能支持1000路写入,CPU跑满。
  从上图可以看到,1000路3M的DVR录制已经将系统的CPU都跑满了,特别需要关注的是cpu的时间主要消耗在了内核空间上面,占了87。5。
  用nload查看当时的输入带宽情况,发现系统输入带宽平均只有2。17Gb,没有达到预期的3Gb的带宽,应该是CPU负载过高导致SRS来不及处理网络IO引起的性能下降。
  再用perf工具对其中一个srs进程进行性能采样分析,得到下面的火焰图:
  可以发现,syswrite操作占用的时间消耗是最多的,对比上面用top看到的内核态消耗的时长占比可以得出的结论是一致的。
  最后看磁盘IO情况:
  从上图看磁盘的利用率没有到100,虽然有一定的波动,但是总体上还是在合理的可以接受的性能范围内。fwriteSSDDisk
  SRS优化后,使用fwrite写入磁盘。录制1000路流,占用32的CPU,性能提升一倍以上。
  从上图可以看到,1000路3M的DVR录制已经将系统的CPU整体来说还有很多空闲(这里说明一下,部分进程的SRS占比高的原因是因为当时任务分配的不够均衡引起的)。特别值得注意的是本次测试内核时间占比大幅下降,只有9。1。
  再用nload看网络io情况,网络io相当平稳,和预期的3Gb完全吻合。
  再看磁盘io的情况,磁盘的利用率没有到100,虽然有一定的波动,但是总体上还是在合理的可以接受的性能范围内。
  最后看火焰图:
  系统调用的时间占比大幅度缩短了,在上图几乎找不到syswrite的位置了。
  C音视频学习资料免费获取方法:关注音视频开发T哥,点击正在跳转即可免费获取2023年最新C音视频开发进阶独家免费学习大礼包!
  writeMemoryDisk
  SRS优化前,也可以挂载内存盘,使用write写入内存盘。
  需要说明一下,由于我手上的服务器只有32G内存,只能分配16G内存给内存盘使用,由于内存盘比较小,按照3Gb的写入速度,最多能写42s的DVR。
  采用如下命令挂载内存盘:mountttmpfsosize16G,mode0755tmpfsdatamemdisk
  并且修改srs的配置文件将文件写入到内存盘:envSRSLISTEN1935SRSMAXCONNECTIONS3000SRSDAEMONoffSRSSRSLOGTANKconsoleSRSVHOSTDVRDVRPATHdatamemdisk〔app〕〔stream〕。〔timestamp〕。flvSRSHTTPAPIENABLEDonSRSVHOSTDVRENABLEDon。objssrse
  测试数据如下,占用CPU27左右:
  从CPU的情况看,采用内存盘也比较理想,loadaverage只有7。5,性能也不错。如果不需要录制大量的流,这种方式也是非常好的。macOS测试数据
  在macOS环境下,也做了一组数据,供参考:1。macOS:MacBookPro,16inch,2019,12CPU(2。6GHz6CoreIntelCorei7),16GBmemory(16GB2667MHzDDR4)。2。v5。0。132优化前:RTMPtoHLS,200streams,SRSCPU87,740MB3。v5。0。133优化后:RTMPtoHLS,200streams,SRSCPU56,618MB4。v5。0。132优化前:DVRRTMPtoFLV,500streams,SRSCPU83,759MB5。v5。0。133优化后:DVRRTMPtoFLV,500streams,SRSCPU35,912MB6。v5。0。133优化后:DVRRTMPtoFLV,1200streams,SRSCPU79,1590MB结论
  从以上4个测试可以得出以下结论:1。无论ssd盘还是内存盘,采用fwrite的性能比采用write的性能有明显的提升,其主要得益于fwrite内置的缓存功能减少了系统调用的数量,带来内核时间消耗的减少,从而提升了性能。2。在ssd盘情况下,fwrite的缓冲能力可以大幅度降低对于CPU的消耗,但是在采用内存盘的情况下,CPU的消耗虽然也能够降低,但是不是那么明显。3。录制到内存盘性能也很好,如果流路数不多也可以考虑这种方案。Note:之前想当然地认为用write写内存盘,因为系统调用引起的用户态到核心态的切换还是会导致cpu大量消耗,一样会导致CPU消耗高居不下,但是事实看到是采用内存盘以后cpu消耗明显下降了,是不是可以认为系统调用引起的用户态到核心态的切换消耗实际上并没有想象的那么大,而是内核态在处理小块的文件write写入磁盘的时候还存在着其他因素引起消耗大量的cpu。
  譬如,因为最终写入磁盘都是按照扇区写入的,而小块写入需要操作系统将这个小块对齐并填充到一个完整的磁盘扇区,从而引起性能大幅下降,而内存盘是不是就不会存在这个问题?
  由于我自己没有内核方面的经验,所以只能存疑了,也请懂内核的朋友给予指点。接下来该怎么办?
  在linux环境中,对于文件进行读写操作的时候,我们可以采用libc提供的freadfwrite系列的一套函数,也可以采用操作系统提供的readwrite系列的一套系统api函数。
  对于libc提供的文件读写函数,首先它可移植性比较好,因为libc为我们屏蔽了操作系统的底层差异,在linux、windows等不同的操作系统环境下面都有标准的接口实现,因此不需要我们为不同的操作系统进行适配。
  其次,libc提供了带缓冲功能的读写能力,而操作系统底层文件读写API却不提供这种能力,缓冲能力在大多数情况下能够为我们带来文件io性能的提升。
  当然libc的文件读写api函数也存在不足之处,缺少了writevreadv之类的函数。不过readvwritev的功能无非就是将多个缓冲区的内容合并成一次批量读写操作,而不需要进行多次API调用,从而减少实际物理IO的次数,我想libc没有提供这类函数主要也是因为其缓冲功能已经能够将本来需要多次的小块物理IO操作合并成了一次更大块的物理io操作,所以就没有必要再提供readvwritev了。
  不管SRS也好,还是NGINX也好,虽然前者采用stthread框架的协程能力来实现网络异步io,但是和后者一样,最终还是采用epoll事件循环来实现网络异步io的,但是对于文件io,目前存在的问题是,无论是write还是fwrite都是同步操作,在磁盘请求比较繁忙的情况下,必然会导致进程或者线程阻塞,从而引起系统并发性能的下降。
  由于操作系统本身不支持epoll异步(linux下的ext4本身没有实现poll的回调),所以寄希望于epoll来实现文件io的异步操作是行不通的。NGINX对于文件异步io采用了aio多线程的方式来实现的,个人感觉是由于和epoll模型来说是一套独立的框架,还是相对比较复杂。
  不过,好在linux在5。1内核以后提供了iouring的异步io框架,它可以统一网络io和磁盘io的异步模型,并支持bufferIO,值得我们去关注学习一下,也值得我们后面一起去探讨一下未来如何在srs上采用iouring来实现带有fwrite一样的缓冲能力的磁盘io的操作,来彻底解决磁盘io引起的性能瓶颈的问题。作者:王磊
  原文链接:https:mp。weixin。qq。coms?bizMzA4NTQ3MzQ5OAmid2649005701idx1sn85df053c78dda929d92f8285c8fe65cechksm87c75f30b0b0d6263f5d94d4569fa256105238aa1bc23b7ff323fa4625bb9f249d1437ce42fbmpshare1scene23srcid0217zlNwQFfuGuWLk8CIcCX7sharersharetime1676614132224sharershareida96e9b09ebf11547090dd99009e597bbrd
  音视频开发流媒体把地球的故事讲给宇宙程序员

欧盟又下手了!苹果被迫开放第三方应用商店这下优势全无11月2日消息,欧盟向苹果公司提出开放更多权限的请求,包括第三方应用商店iMessage信息和FaceTime通话等权限,允许更多开发者利用这些权限开发自己的应用程序。据悉,苹果在买MiniLED高端电视,海信新款E8H和TCLQ10G,买哪个?先说结论选TCLQ10G系列。MiniLED电视一旦到了最顶级,肉眼可见的画质差距并没有太多。相对选TCL更超值一些,质价比更高,且尺寸选择更多,小老百姓不能不在乎。高端电视Min马歇尔acton2外观开箱测评马歇尔这款音箱在网上看了有大半年了,今年初在广州三元里的皮具城一楼的某间店内注意到这款小巧但却能量爆表的音箱,瞬间被它的颜值和声音种草。这段时间都在网上看了很多,但自营店都处于缺货目前公认的四款超高性价比手机,堪称行业最佳,有你在用的吗?如果你问我目前哪款手机最值得入手,那我一定会建议你考虑这四款高性价比机型,堪称目前行业最佳,入手超值。第一款红米Note11TPro处理器天玑8100屏幕6。6英寸144Hz电竞变智能升降台暗藏摄像头?创始人喊冤产品全网下架近日,有消费者反映其购买的乐歌人体工学A9智能升降台不仅存在产品质量问题,且该产品数码屏安有摄像头却未在产品页说明。随后,乐歌董事长在短视频平台喊冤,强调该商品为商用产品,且从其机家庭影院构建心理路程功放篇(1)家庭影院功放是整个系统的核心,可谓是非常关键,小编也是花费了诸多时间和精力对比和比较,每个人心中都有一个哈姆雷特,选择的过程有各种声音,最终对比下来,有那种众里寻他千百度,它就在那MacBook发光logo或有望回归荣耀80系列预计本月发布iPhoneSE4或搭载5。7至6。1英寸屏11月1日,星期二,欢迎收看今天的科技V报,我是Geek枫云,苹果iPhone14Pro系列的发布让苹果的全面屏进程进入打孔阶段,那么原松下GH6视频神器相机到手12698元对于视频创作者或者视频团队来说,一定听过松下GH系列的名号,最新一代的产品为松下GH6。松下GH6拥有强大的视频捕捉能力,可以达到专业级的效果,满足专业用户的视频拍摄需求。现在,松哥白尼哨兵2号太空探索地球系列欣赏南极洲的万圣节裂缝为了庆祝万圣节,欧洲航天局(ESA)为您带来了这张最近的哥白尼哨兵2号卫星拍摄的南极洲万圣节裂缝图像。万圣节裂缝于2016年10月31日首次被发现,它从南极洲一个被称为麦克唐纳冰瘤小米怎么了?11系列频繁上热搜?现在性价比怎么样?在近几年,我们对小米最深的印象就是性价比,觉得同样价格买小米准没错。不过,小米的初心似乎变了,如今也开始向高端机市场进军,但给消费者带来的却不是良好的体验,11系列就出现了频繁上热房企好学生产品拆解系列绿城,拗浪潮终会褪去,谁在裸泳,一眼便知去除高周转后,地产最初回归产品主义何况大会的风已经吹来增进民生福祉,提高人民生活品质房地产从走量到求质之前捌哥写过地产应该朝何处走去要如何顺应潮水方
售价20。99万元起,小鹏P7产品力解析,最高续航625km说到20万元级别的新能源车型,可以选择的车型也是比较丰富,无论是一些新势力品牌还是传统品牌,每个车型都有着自己独特的卖点,小编筛选了一款车型小鹏P7,小鹏P7共推出4款车型,售价区个人电脑市场低迷,戴尔宣布裁员6650人(观察者网讯)由于经济和市场环境出现变化,裁员浪潮正席卷美国科技行业。据美国彭博社2月6日报道,由于个人电脑市场表现低迷,美国知名科技公司计算机行业巨头戴尔计划裁员6650人,约占2899元,小米笔记本12。4二合一今日首销搭载2。5K高色域触控屏IT之家2月7日消息,小米笔记本12。4二合一现已在小米商城小米有品京东商城开启预售,将在今日上午十点正式开售,首发到手价2899元!这款机型搭载了高通骁龙8cxGen2处理器2。新能源汽车免征车辆购置税,12366热线你问我来答12366hr热点梳理问答来啦近期市政府发布上海市提信心扩需求稳增长促发展行动方案,其中提到全力落实新能源汽车免征车辆购置税等各项税费优惠政策,为方便大家更好地理解相关知识点,申税羊了个羊大乱斗软件著作权获批,羊了个羊登记多个软件著作权天眼查App显示,2月6日,羊了个羊关联公司北京简游科技有限公司羊了个羊大作战羊了个羊集结羊了个羊大世界羊了个羊后院羊了个羊大乱斗多个软件著作权获登记批准,当前版本号均为V1。0。买对不卖贵值得入手的4款大底拍照手机,荣耀vivo更喜欢谁如果您喜欢,可以点击上面的关注二字。后续会为您提供更多有价值的内容。今天分享,买对不卖贵值得入手的4款大底拍照手机,荣耀vivo更喜欢谁。第一款vivoS16参考价格2949元(1这家公司做人形机器人,比特斯拉早了10年作者董温淑编辑董雨晴1978年,日本早稻田大学的教授加藤一郎在北京举行了一场座无虚席的讲座。这位教授另外的头衔,还包括世界人形机器人之父著名机器人研发机构加藤实验室的创始人。而参加易建联还能打几年?朱总说,不管了,我先续约!二飞恐难有顶薪传闻,朱芳雨做了一件伟大的事,提前续约了易建联。三旬老汉,NBA的詹姆斯在努力打球争取冠军CBA的易建联同样在努力帮助球队,这几年,还能夺冠吗?众所周知,易建联是非常忠于广东队。曾高启强回忆妈妈,点亮我们心中柔软的灯每个人都有妈妈。妈妈是我们来到人世间的第一个亲人。看高启强扮演者张颂文老师的回忆文章,让您感同身受儿童时的成长体验,妈妈病重时的孤独无助痛苦煎熬,妈妈去世时悲痛爆发,以及多年以后的谢琳伍德蕾PORTER杂志封面大片,阳光白衬衫清新舒适谢琳伍德蕾PORTER杂志大片出街,阳光白衬衫,清淡妆容,低调的女演员,清新舒适的居家画风。演艺路稳扎稳打的谢琳因后裔一鸣惊人,之后在星运里的错好景当前分歧者大小谎言等作品中展现不赏梅盈香烹茶吟诗,花乡茶谷的梅花开好了长江日报大武汉客户端2月8日讯(记者叶飞艳通讯员张叶子)2月8日,花乡茶谷景区内,梅花一株株一片片,竞相怒放,已有花海规模。空气里,都是花香浮动,暗香袭人。花乡茶谷为国家AAAA级
友情链接:快好找快生活快百科快传网中准网文好找聚热点快软网