freeswitch-1.10.7性能测试
概述
freeswitch 是一款简单好用的开源软交换平台。
freeswitch-1.10.7是比较新的版本,使用时间比较短,需要一个可参考的性能指标,作为实际使用过程中的配置指导。
环境
centos:CentOS release 7.0 (Final)或以上版本
cpu,64逻辑核
memory,16G
freeswitch:v1.10.7
GCC:4.8.5
测试方案
AB路使用sipp作为测试终端。
sippa -> freeswitch-1.10.7 -> sippb
测试分几个维度。
cps max,call per second max,最大每秒呼叫发起量。
capacity max,最大呼叫并发容量。
cps & capacity,均衡性能,保持平均呼叫时长20秒的情况下,cps和capacity的均衡指标。
性能指标工具。
watch -n 1 ./fs_cli -x status,查看fs的session数,和cpu占用。
htop,查看各个cpu使用情况和内存。
nload,查看网络流量。
dstat,查看系统资源。
cps max
单独测试cps,不保留呼叫并发容量。
cps达到700的时候,cpu占用在75%。
capacity max
单独测试capacity,容量达到要求,不再继续发起呼叫。
呼叫,容量3000,cpu占用70%
cps & capacity
cps和capacity的综合压力测试结果才是我们最需要的,是符合生产环境场景的数据。
呼叫,容量2400,cps120,cpu占用29%

呼叫,容量2600,cps130,cpu占用35%

呼叫,容量2800,cps140,cpu占用45%

呼叫,容量3000,cps150,cpu占用60%

呼叫,容量3200,cps160,cpu占用75%

htop的统计数据

dstat的统计数据

总结
本文对freeswitch-1.10.7版本的性能测试做了介绍,性能指标可以作为生产环境配置估算的指导。
从htop的截图看,fs对cpu的分配是均匀的。
capacity容量超过3500的时候,cpu占用会急剧上升到99%,怀疑线程过多的场景下,线程切换占用了大部分资源。
后续继续对性能优化的方向,考虑多开fs实例,多开虚拟机,thread线程切换优化等。
空空如常
求真得真
freeswitch-1.10.7性能测试的更多相关文章
- FreeSWITCH 1.10.7 编译(debian 11)
1.安装预备库 apt install -y build-essential gdb gnupg2 wget autoconf lsb-release libtool libtool-bin libt ...
- 10.Redis 性能测试
转自:http://www.runoob.com/redis/redis-tutorial.html Redis 性能测试是通过同时执行多个命令实现的. 语法 redis 性能测试的基本命令如下: r ...
- LoadRunner性能测试巧匠训练营
<LoadRunner性能测试巧匠训练营>基本信息作者: 赵强 邹伟伟 任健勇 丛书名: 实战出版社:机械工业出版社ISBN:9787111487005上架时间:2015-1-7出版日期: ...
- 公网用户接入NAT后面的freeswitch配置
大致网络示意和终端号码: 客户端侧: 终端号码(1019)终端IP(192.168.1.15)+ 网关(192.168.1.1) + 路由器公网IP(动态地址) 服务器侧: 防火墙(181.92.2. ...
- FreeSWITCH视频直播
大家都知道,如今,视频直播比较火啊. 今天,在FreeSWITCH精英群里分享了FreeSWITCH做视频直播相关的技术. 首先,要做直播就得有好机器.笔者买了一台阿里云的主机,买的是按量付费的,4核 ...
- Freeswitch Tutorial
I. Install Freeswitch 1) FreeSWITCH Explained https://freeswitch.org/confluence/ https://freeswitch. ...
- Linux运维之道(大量经典案例、问题分析,运维案头书,红帽推荐)
Linux运维之道(大量经典案例.问题分析,运维案头书,红帽推荐) 丁明一 编 ISBN 978-7-121-21877-4 2014年1月出版 定价:69.00元 448页 16开 编辑推荐 1 ...
- Java编程思想(11~17)
[注:此博客旨在从<Java编程思想>这本书的目录结构上来检验自己的Java基础知识,只为笔记之用] 第十一章 持有对象 11.1 泛型和类型安全的容器>eg: List<St ...
- Windows版Redis如何使用?(单机)
使用Windows版Redis 1.下载Windows版本的Redis 2.在redis目录里创建redis.conf ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 ...
- JMeter【第五篇】关联:5种方法
前几天在Q群里看到群友发的最近10年性能测试工具使用率的统计,最近的2018年,jmeter+loadrunner占了93%的使用率,说明这两个是主流,其中,jmeter的使用率逐年提升,现在已经超过 ...
随机推荐
- [ABC261C] NewFolder(1)
Problem Statement For two strings $A$ and $B$, let $A+B$ denote the concatenation of $A$ and $B$ in ...
- ssm整合-异常处理器
异常处理器 程序开发过程中不可避免会遇到异常现象 类似于这样的异常 异常出现的种类: 各个层均可能出现异常,当我们出现异常时,处理代码应该写在哪一层? 表现层,因为要把异常网上抛,在表现层进行 ...
- offline RL | Pessimistic Bootstrapping (PBRL):在 Q 更新中惩罚 uncertainty,拉低 OOD Q value
论文题目:Pessimistic Bootstrapping for Uncertainty-Driven Offline Reinforcement Learning,ICLR 2022,6 6 8 ...
- 安卓之DocumentsProvider应用场景以及优劣分析
文章摘要 本文深入探讨了安卓DocumentsProvider的应用场景,分析了其优势与不足,并提供了简单的代码实现.DocumentsProvider是安卓系统中用于文件存储与访问的关键组件,为应用 ...
- 安装了华企盾DSC防泄密,所有进程的加密文件都无法打开
用pchunter等工具查看系统回调中是否有文件厂商不存在的(system目录的除外),在恢复模式删除掉,或者用360系统急救箱查杀一下
- 让 sdk 包静默升级的 SAO 操作,你见过几种?
拓展阅读 让 sdk 包静默升级的 SAO 操作,你见过几种? 业务背景 有时候为业务方提供了基础的 sdk 包,为了保证稳定性,一般都是 release 包. 但是每一次升级都非常痛苦,也不可能写一 ...
- 一个简单的Python暴力破解网站登录密码脚本
目录: 关键代码解释 完整代码 方法一 运行结果 方法二 运行结果 测试靶机为DVWA,适合DVWA暴力破解模块的Low和Medium等级 关键代码解释 url指定url地址 url = " ...
- 如何开发一个ORM数据库框架
如何开发一个ORM框架 ORM(Object Relational Mapping)对象关系映射,ORM的数据库框架有hibernate,mybatis.我该如何开发一个类似这样的框架呢? 为什么会有 ...
- 遍历菜单树得到所有菜单ids
1.前言 在我们实现菜单管理页面的时候,有时候我们需要默认展开所有的菜单列表,但是因为后端有时候没有返回所有菜单ids数组. 而且我们也不容易获取到所有菜单ids,比如如果我们通过角色id查询到所有菜 ...
- 实战案例丨代码优化:如何去除context中的warning?
在一个java语言群里面,有人抛了这么一段代码出来,问题是出现了下下图中的warning,问有什么好的方法消除 这种强转都是因为类型链条断掉了,写入的时候擦除了类型,读出来的时候也就只能强转了,那个i ...