-
FreeSwitch异常测试部分涉及db9接口定义
资源介绍
第六章 FreeSwitch异常测试部分
异常测试环境说明:
异常测试目的尽量模拟实网环境,使用 mysql 作为工作数据。运行 FreeSwitch服务器的配置是 WIN7 32位
3612 CPU,6G内存,由于 32位 OS的限制。实际 OS能使用的不到 4G,其它的 2G额外的内存划做内存盘
Z:盘。
模拟实网运行过程中发生的各种异常,特别关注的是异常发生的时候,以及异常消失之后,FreeSwitch 能
否正常运行。
测试使用的是 IVR 模式进行测试。ESL 的 IVR 程序和 FreeSwitch在一个机器上运行。测试的场景是 拨入,
播音,按键 1 播音 挂机,按键 2转出,或者按键#进入电话会议。
呼叫测试的客户端使用 PJSIP。
开了 3个 PJSIP 进程,分别模拟按键 1 播音 挂机,按键 2转出,和按键#进入电话会议
并发在 100线到 200线之间。
140. FreeSwitch使用过程中 cpu负载发生异常结果如何?
先准备一个吃 CPU 的测试程序
测试机器是 8核,因此,写了一个测试程序,
假如要吃 100%CPU 就开 8个死循环线程。
假如要次 90%左右 CPU就开了 7个死循环的线程,仅仅留一个核给 FreeSwitch使用:
int CallOutWorkThreadRealTime(void* arg)
{
int i;
while (1) {
i=0;
i++;
}
}
int main(int argc,char *argv[])
{
for(int i=0;i<7;i++)
CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)CallOutWorkThreadRealTime,(LPVOID)(0),0, NULL);
while(1)
{
Sleep(10);
}
return 0;
}
Cpu 异常有两种情况:
第一种是 FreeSwitch 正常运行过程中,使用其它吃 CPU的测试进程把 100%cpu 占用了。如下图:
- 上一篇: 预览时播放声音控制-catia v5 零件库
- 下一篇: librtmp推流demo