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
The quintessential "performance thread" =D I don't know if anyone has compiled a collection of all the advice from the previous years of threads but we tend to stay out of performance testing discussions apart from a few tips. 1) Disable manage-presence on mod_sofia 2) Make sure the callflow you are calling is not too intensive. Every type of call consumes a variable amount of resources depending on what it does in the dialplan. The default dialplan has all kind of demo stuff in it so its best to make a test extension and put it first in your xml context so it does not needlessly execute all the demo stuff. 3) Windows is a very specific environment and there are less people using it for feedback. Compare results to Linux Debian 7 or equiv. 4) Try HEAD or latest 1.2.15 and compare to master branch. 5) Putting the core db into sql server is quite possibly slower than the built-in sqlite. On Tue, Nov 19, 2013 at 6:09 PM, Andre <andretodd@verizon.net> 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@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
-- Anthony Minessale II FreeSWITCH http://www.freeswitch.org/ ClueCon http://www.cluecon.com/ Twitter: http://twitter.com/FreeSWITCH_wire AIM: anthm MSN:anthony_minessale@hotmail.com GTALK/JABBER/PAYPAL:anthony.minessale@gmail.com IRC: irc.freenode.net #freeswitch FreeSWITCH Developer Conference sip:888@conference.freeswitch.org googletalk:conf+888@conference.freeswitch.org pstn:+19193869900
Thanks Anthony, I did disable managed-presence and I use my custom dial plan just to return a 503. I will try it using again and remove the sql database to see if that helps. I did try -nosql but that didn't seem to make any difference. When I downloaded 1.2.15 I couldn't get it to compile to 64 bit ( I do see it's been fixed but I'm not sure where to get the fixed version ) and there was a compile error in fs_cli (I think it was fs_cli) that needed a code fixed. Any other suggestions would be welcomed. I need to get at least 500 CPS. Thanks Andre From: freeswitch-users-bounces@lists.freeswitch.org [mailto:freeswitch-users-bounces@lists.freeswitch.org] On Behalf Of Anthony Minessale Sent: Tuesday, November 19, 2013 7:30 PM To: FreeSWITCH Users Help Subject: Re: [Freeswitch-users] Freeswitch Performance The quintessential "performance thread" =D I don't know if anyone has compiled a collection of all the advice from the previous years of threads but we tend to stay out of performance testing discussions apart from a few tips. 1) Disable manage-presence on mod_sofia 2) Make sure the callflow you are calling is not too intensive. Every type of call consumes a variable amount of resources depending on what it does in the dialplan. The default dialplan has all kind of demo stuff in it so its best to make a test extension and put it first in your xml context so it does not needlessly execute all the demo stuff. 3) Windows is a very specific environment and there are less people using it for feedback. Compare results to Linux Debian 7 or equiv. 4) Try HEAD or latest 1.2.15 and compare to master branch. 5) Putting the core db into sql server is quite possibly slower than the built-in sqlite. On Tue, Nov 19, 2013 at 6:09 PM, Andre <andretodd@verizon.net <mailto:andretodd@verizon.net> > 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@freeswitch.org <mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org <mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org -- Anthony Minessale II FreeSWITCH http://www.freeswitch.org/ ClueCon http://www.cluecon.com/ Twitter: http://twitter.com/FreeSWITCH_wire AIM: anthm MSN:anthony_minessale@hotmail.com <mailto:MSN%3Aanthony_minessale@hotmail.com> GTALK/JABBER/PAYPAL:anthony.minessale@gmail.com <mailto:PAYPAL%3Aanthony.minessale@gmail.com> IRC: irc.freenode.net <http://irc.freenode.net> #freeswitch FreeSWITCH Developer Conference sip:888@conference.freeswitch.org <mailto:sip%3A888@conference.freeswitch.org> googletalk:conf+888@conference.freeswitch.org <mailto:googletalk%3Aconf%2B888@conference.freeswitch.org> pstn:+19193869900
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@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
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@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@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@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
Get HEAD of stable branch or HEAD of master for latest build files. There is no promise windows can do 500cps the industry standard is 50 and you'll have probably more luck on linux but there is only on way to fimd out. On Nov 19, 2013 11:27 PM, "I put the Who? in Mishehu" < mishehu@freeswitch.org> wrote:
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@freeswitch.orghttp://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Serverhttp://www.cudatel.com
Official FreeSWITCH Siteshttp://www.freeswitch.orghttp://wiki.freeswitch.orghttp://www.cluecon.com
FreeSWITCH-users mailing listFreeSWITCH-users@lists.freeswitch.orghttp://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-usershttp://www.frees...
_________________________________________________________________________ Professional FreeSWITCH Consulting Services:consulting@freeswitch.orghttp://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Serverhttp://www.cudatel.com
Official FreeSWITCH Siteshttp://www.freeswitch.orghttp://wiki.freeswitch.orghttp://www.cluecon.com
FreeSWITCH-users mailing listFreeSWITCH-users@lists.freeswitch.orghttp://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-usershttp://www.frees...
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
I tested again and when I use 25 cps for 2 hours everything worked fine. When I sent 50 cps I noticed FreeSWITCH worked for about 5 minutes then I saw the memory jump from 122 mb to to 1.6 gb in seconds. I think FreeSWITCH crashed but the logs show nothing other than FreeSWITCH was receiving the new messages but no bridge or cancel actions were taking place. How do I tell what happened that made freeswitch just stop working? The GUI didn't show anything like a throw exception and when I type version or sofia status in the FreeSWITCH gui it doesn't respond. Andre From: freeswitch-users-bounces@lists.freeswitch.org [mailto:freeswitch-users-bounces@lists.freeswitch.org] On Behalf Of Anthony Minessale Sent: Wednesday, November 20, 2013 12:33 AM To: Freeswitch-users Subject: Re: [Freeswitch-users] Freeswitch Performance Get HEAD of stable branch or HEAD of master for latest build files. There is no promise windows can do 500cps the industry standard is 50 and you'll have probably more luck on linux but there is only on way to fimd out. On Nov 19, 2013 11:27 PM, "I put the Who? in Mishehu" <mishehu@freeswitch.org <mailto:mishehu@freeswitch.org> > wrote: 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@freeswitch.org <mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org <mailto:FreeSWITCH-users@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@freeswitch.org <mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org <mailto:FreeSWITCH-users@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@freeswitch.org <mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org <mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
show nothing other than FreeSWITCH was receiving the new messages but no bridge or cancel actions were taking place
Do you have your logs at debug level and are there any log messages that indicate a call reaching a point then pausing? I saw something recently similar under load, and it turned out to be the limit subsystem was waiting on DB queries that were severely backing up because there were too many commits happening per second and InnoDB was configured to flush to disk on every transaction commit which can only happen ~200 times per second. (Switching to the memory engine fixed the error although isn't transactional). -Steve -Steve On 20 November 2013 20:38, Andre <andretodd@verizon.net> wrote:
I tested again and when I use 25 cps for 2 hours everything worked fine. When I sent 50 cps I noticed FreeSWITCH worked for about 5 minutes then I saw the memory jump from 122 mb to to 1.6 gb in seconds. I think FreeSWITCH crashed but the logs show nothing other than FreeSWITCH was receiving the new messages but no bridge or cancel actions were taking place.
How do I tell what happened that made freeswitch just stop working? The GUI didn’t show anything like a throw exception and when I type version or sofia status in the FreeSWITCH gui it doesn’t respond.
Andre
*From:* freeswitch-users-bounces@lists.freeswitch.org [mailto: freeswitch-users-bounces@lists.freeswitch.org] *On Behalf Of *Anthony Minessale *Sent:* Wednesday, November 20, 2013 12:33 AM *To:* Freeswitch-users
*Subject:* Re: [Freeswitch-users] Freeswitch Performance
Get HEAD of stable branch or HEAD of master for latest build files.
There is no promise windows can do 500cps the industry standard is 50 and you'll have probably more luck on linux but there is only on way to fimd out.
On Nov 19, 2013 11:27 PM, "I put the Who? in Mishehu" < mishehu@freeswitch.org> wrote:
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@freeswitch.org
http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server
Official FreeSWITCH Sites
FreeSWITCH-users mailing list
FreeSWITCH-users@lists.freeswitch.org
http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
_________________________________________________________________________
Professional FreeSWITCH Consulting Services:
consulting@freeswitch.org
http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server
Official FreeSWITCH Sites
FreeSWITCH-users mailing list
FreeSWITCH-users@lists.freeswitch.org
http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@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@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
participants (6)
-
Andre
-
Andre DeMattia
-
Anthony Minessale
-
Antonio Teixeira
-
I put the Who? in Mishehu
-
Steven Ayre