• 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线程切换优化等。

    空空如常

    求真得真

  • 相关阅读:
    数据结构C++——二叉树的实现
    PHP高级教程
    跟着森老师学React Hooks(1)——使用Vite构建React项目
    地理探测器原理介绍
    HTML中的文本标签:微观排版的艺术
    62GFS分布式文件系统
    造轮子之asp.net core identity
    Git Bash/GUI Here “找不到应用程序问题
    条条大路通罗马-面试题(一)
    《Python进阶系列》二十七:字符串类型代码的执行函数——eval()、exec()和compile()
  • 原文地址:https://blog.csdn.net/qiuzhendezhen/article/details/127674481