最近一直在做Red5的直播与视频开发,虽然Red5提供了与FMS趋同的功能,但对于Red5的性能我们一直不太清楚,如果想大规模使用Red5作为我们的生产服务器,那么还需要对它进行一些性能测试,以此来验证它是否能满足我们的需求.
测试概要
对Red5进行压力测试与性能测试,其中Red5版本为1.0.0-RC1.
测试环境
硬件环境:CPU:Intel i3-2100@3.10GHz,内存8G
软件环境:Red5,CentOS
网络环境:1000M
测试内容
- Red5在大并发下的稳定性表现
- Red5在千兆环境下最多能支持多大并发用户量的访问
测试数据
测试数据来源于前期开发整理的视频,大约20个原生视频,上传到服务器后处理成400Kbps与800Kbps码流的视频文件.
测试结果
400kps结果见图
800kps结果见图
测试结果说明
- 并发用户涵盖100/200/500,主要是为了确保是否支持500并发用户的流畅访问,超过500时主要验证Red5系统支持的最高并发值.
- 实际网络占用捕获数据来源于视频传输所在的网卡监测,由于直接采集自网络,因此包含的流量不仅仅为视频传输本身的流量,还有其他使用该网卡的应用数据.
- 理论带宽占用计算方式为单视频码流*并发量换算而来,如100并发的400bps访问,其单位时间的带宽占用为400Kbps * 100 / 1024 = 39.1Mbps,其他值的结果同此计算.
- 所有采集的取值均使用98%置信区间,即把采集所得数据从高到低排列,取位于98%的最高值,也即98%的实际取值低于表中所列的值.
- 播放状态表示视频的顺畅与否,正常表示播放顺畅,没有任何停滞现象,否则则代表视频播放存在延迟.
测试结论
800Kbps的测试方法,统计方式与前面的400Kbps基本相同,我们得到结论是,800Kbps下,单机Red5最大支持600并发用户同时播放视频,其主要瓶颈也是Red5的任务调度问题,但低于400Kbps的700并发,其中一个主要原因是带宽因素,800Kpbs下600并发实际消耗的带宽也已经毕竟交换机的可用极限(需要考虑到98%置信区间以外的峰值影响).实际测试中,超过600并发,播放码流为800Kbps的视频已经出现明显的迟滞现象.
综上,测试的结论是单Red5服务器,400Kbps支持700人同时流畅播放,800Kbps支持600人同时流畅播放.
相关推荐
免安装版的Red5是指无需通过传统安装过程,可以直接运行的版本,这对于开发者进行快速测试或者在不同环境中部署非常方便。在你提供的文件列表中,"red5-1.0.0-build-jenkins-red5-226"很可能是一个特定构建版本的Red...
4. **测试与调试**:使用示例应用或自己的应用进行测试,确保Red5运行正常。 开发者在使用Red5时,需要注意的问题包括: - **日志监控**:通过日志文件了解服务器运行状态,及时发现并解决问题。 - **安全设置**:...
Red5是一款开源的流媒体服务器,它支持实时流传输协议(RTMP)、RTMPT、RTMPE、RTMPF、RTMPS等,能够处理音视频的直播、点播和录制等多种应用场景。在本项目中,我们关注的是Red5 1.0的Web版本,该版本特别适合在Web...
- 安装完成后,你可以通过访问OFLA Demo来测试Red5服务器是否正常工作。`oflaDemo.rar`文件包含了OFLA演示的源代码和资源,解压后将`oflaDemo`文件夹复制到Red5的`webapps`目录下。 - 启动服务器后,打开浏览器...
性能测试是为了确保扩展后的Red5服务器能够在高负载情况下稳定运行,并且满足预定的性能指标,如响应时间、吞吐量和并发用户数量等。测试过程可以采用压力测试工具,模拟大量用户访问服务器,观察服务器在极端情况下...
- **性能测试**:在部署前进行全面的性能测试,包括但不限于压力测试、稳定性测试等。 - **用户体验评估**:收集用户反馈,不断优化产品的用户体验。 - **持续集成与部署**:采用持续集成/持续部署(CI/CD)的方式...
10. **监控和优化**:运行Red5后,你可能需要监控服务器性能,确保它能稳定地提供服务。可以使用系统自带的监控工具,如 `top` 和 `htop`,或者第三方工具如 `jconsole` 来查看JVM的内存使用情况和线程状态。 请...
`webapps`目录是Red5服务器存放Web应用程序的地方,类似于Java的Tomcat服务器中的`webapps`目录,当Red5启动时,会自动检测该目录下的所有Web应用并进行加载。 为了成功完成手动部署,你需要确保以下几个步骤: 1....
搭建RED5应用是创建基于Flash技术的实时多媒体服务器应用程序的过程,Eclipse是一个广泛使用的Java集成开发环境,可以方便地管理和构建RED5项目。以下是详细步骤和相关知识点: 1. **下载RED5**: 首先从RED5官方...
7. **测试**:通过创建一个简单的应用或者使用Red5自带的示例应用,测试服务器是否能正常工作,流媒体服务是否可以成功建立和播放。 在实际操作中,可能还会遇到如版本兼容性问题、权限问题、库冲突等问题,这时候...
- **开发工具**:可能包含一些用于测试、性能监控的专用工具。 4. **开发环境配置** - **Java环境**:确保安装了JDK 8或更高版本,因为Red5 Pro需要Java环境运行。 - **下载与解压**:从官方渠道获取red5pro-...
在给定的压缩包文件中,包含了一系列Red5 1.0.0版本的示例应用,这对于初学者或开发者了解和使用Red5服务器非常有帮助。以下是这些示例应用的详细说明: 1. **oflaDemo**:这是一个基本的流媒体演示,展示了Red5的...
Red5_1.0.8版本包含了多项改进和修复,以提高服务器的性能和稳定性。它可能包括对先前版本中的错误修复、新的功能添加或优化,以及对不同操作系统和Java环境的兼容性增强。为了便于开发者使用,Red5提供了与Eclipse...
红5搭建流媒体直播系统 随着网络技术的快速发展,流媒体直播...3. 高性能:红5具有高性能和稳定性,支持大规模的流媒体直播应用。 红5搭建流媒体直播系统具有广泛的应用前景和潜力,满足了当前流媒体直播系统的需求。
【标题】:“Red5+Flex简单聊天例子”揭示了如何结合使用Red5服务器和Flex前端技术来构建一个基本的在线聊天应用。Red5是一个开源的流媒体服务器,它支持实时通信,而Flex则是一个用于创建富互联网应用程序(RIA)的...
8. **性能优化**:为了提高Red5的性能,你可能需要调整JVM参数,比如增加堆内存大小、启用G1垃圾收集器等。另外,了解并优化网络设置,如带宽、缓冲区大小等,也是很重要的。 9. **监控与日志**:了解如何查看Red5...