[Freeswitch-users] Freeswitch Performance

I put the Who? in Mishehu mishehu at freeswitch.org
Wed Nov 20 08:27:26 MSK 2013


The amusing thing about the recurring load test threads that pop up 
every now and then is that the most important tips are already 
documented on the wiki in one single page.  Beyond that, you probably 
spend more time load testing than you do just tossing up another server 
and using something like kamailio or opensips to load balance...

-- 
Yossi Neiman


On 11/19/2013 06:48 PM, Antonio Teixeira wrote:

> Hello Andre.
>
> Solving performance problems is always hard , but a few points to keep 
> in mind :
>
> To my knowledge FS is pretty much a linux software , it works on 
> windows by that i doesn't means it performs on windows ( please 
> correct me if i'm wrong)
> The native DB for FS is Postgresql ( this should make you oracle admin 
> more happy :) ).
>
> Try this :
> Linux Server Realtime Kernel + Last FS Stable + Postgresql ( tune it 
> well).
> Take care with ulimit on linux , its needed for the extra punch of 
> performance
> Check if your "performance test" is real if you are pointing to 
> 1500CPS for a two minute call you will have 180k calls before the 
> first call gets disconnected,  if you are also testing RTP that means 
> 180k * 2 ports needed , The Kernel will start to complaining and you 
> will run out of ports you will also run out of FD probably before you 
> run out of ports on a not tuned linux install.
> If the DB is on the same server it will also  stall since the FD will 
> not be present for new connections to the back end.
>
> In terms of BW you will exceed 230000 kb/s add a few more kb/s for the 
> DB ( Not a problem here i think)
>
> Another thing , no sip server ( please include all the nice names here 
> like B2BUA , etc ) should ever queue anything.
> I have never read the code that handles this on FS but the way i would 
> do it should be something like : can we sustain the load ? No in that 
> case send 503 else proceed.
> This is done in freeswitch by this var
> https://wiki.freeswitch.org/wiki/XML_Switch_Configuration#max-sessions
>
> A more general approach:
> In SIp Servers you will generally ( if not running cpu intensive 
> tasks, trancoding , tone detection , etc ), consume all the ram , 
> Network IO ,than the cpu.
> For the guys that plan something big you should take a look at this :
> http://www.solarflare.com/High-Frequency-Trading
> Not by The NIC itself but because of this :
> http://www.openonload.org
>
> Without more data i don't think we can help , above all performance 
> testing is a dark art you just need to keep on trying different things 
> and above all have some type of monitor tool to understand what 
> exactly is holding you up , maybe its no FS...
>
> Also 1500CPS is something seen in  carrier operations generally with a 
> named SBC in front , keep in mind that FS is a great software but it 
> doesn't hold against SBC's that use special processors like ASIC to 
> perform transcoding , sip parsing , tone detection ,etc etc
>
>
> Disclaimer : post written deep into the night...
>
> On 20/11/13 00:09, Andre wrote:
>>
>> Hi, I am testing out my FreeSWITCH  1.2.14 64 bit windows 8.1 on my 
>> Alienware Laptop with a very fast SSD and I7 processor with 8 GB DDR3 
>> Ram.
>>
>> I have been using a pjsip test tool to test FreeSWITCH to see how it 
>> performs. Tell me if I'm wrong here, I believe if I sent "too many" 
>> calls to FreeSWITCH  that it queues up the calls and sooner or later 
>> uses all the memory on my PC then just stops working.  I do have the 
>> CPS sent to 1500 for testing but I never hit that high, I hit about 
>> 200 CPS.
>>
>> The CDRs that save to my database show it takes about 8 seconds from 
>> start time to end time. It does start out only taking milliseconds 
>> then it progresses to the 8 second mark.
>>
>> The calls are just going to FreeSWITCH then I'm sending back a 503.
>>
>> I have every mod turned off, logging set to 0, Core db going to a SQL 
>> Server and I even set FreeSWITCH to real time.
>>
>> Can anyone give me advise on what I can do to get better 
>> performance?  I've also tested it out on my real server but in about 
>> 3 minutes of 50 cps FreeSWITCH uses up 3gb of memory and stops 
>> responding.
>>
>> I'm at a loss here on what else to do.
>>
>> Andre
>>
>>
>>
>> _________________________________________________________________________
>> Professional FreeSWITCH Consulting Services:
>> consulting at freeswitch.org
>> http://www.freeswitchsolutions.com
>>
>> 
>> 
>>
>> Official FreeSWITCH Sites
>> http://www.freeswitch.org
>> http://wiki.freeswitch.org
>> http://www.cluecon.com
>>
>> FreeSWITCH-users mailing list
>> FreeSWITCH-users at lists.freeswitch.org
>> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
>> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
>> http://www.freeswitch.org
>
>
>
> _________________________________________________________________________
> Professional FreeSWITCH Consulting Services:
> consulting at freeswitch.org
> http://www.freeswitchsolutions.com
>
> 
> 
>
> Official FreeSWITCH Sites
> http://www.freeswitch.org
> http://wiki.freeswitch.org
> http://www.cluecon.com
>
> FreeSWITCH-users mailing list
> FreeSWITCH-users at lists.freeswitch.org
> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
> http://www.freeswitch.org

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.freeswitch.org/pipermail/freeswitch-users/attachments/20131119/c4ad200b/attachment.html 


Join us at ClueCon 2013 Aug 6-8, 2013
More information about the FreeSWITCH-users mailing list