[Freeswitch-users] Central FreeSWITCH nodes management with Mod_XML_Curl vs Mod_Lua

Ben Langfeld ben at langfeld.co.uk
Wed Jul 18 15:27:53 MSD 2012


Does mod_xml_curl not support caching? If so, you could reduce load on your
web servers by setting the correct response headers and avoid having to
return a payload, or even FS making a request in the first place. In the
case of failure, FS could fall back to its cache.

Regards,
Ben Langfeld


On 18 July 2012 09:53, Eugene Azuka <eugeneazuka at gmail.com> wrote:

> Thank you FreeSWITCH experts:
>
> Michael Collins, Kristian Kielhofner, Vik Killa,  Gabriel Gunderson.
>
> Thanks you all, i appreciate your comments.
>
> Gabriel Gunderson, Anyone who has practical experience of FreeSWITCH and
> able to reply and give meaningful comment/solution to help request, to me
> that person an experts. So you are an expert.  :)
>
>
> Regards
>
> Eugene
>
>
>
>
>
> On Tue, Jul 17, 2012 at 11:41 PM, <
> freeswitch-users-request at lists.freeswitch.org> wrote:
>
>> Send FreeSWITCH-users mailing list submissions to
>>         freeswitch-users at lists.freeswitch.org
>>
>> To subscribe or unsubscribe via the World Wide Web, visit
>>         http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
>> or, via email, send a message with subject or body 'help' to
>>         freeswitch-users-request at lists.freeswitch.org
>>
>> You can reach the person managing the list at
>>         freeswitch-users-owner at lists.freeswitch.org
>>
>> When replying, please edit your Subject line so it is more specific
>> than "Re: Contents of FreeSWITCH-users digest..."
>>
>> Today's Topics:
>>
>>    1. how to get leg_delay_start to work for bridge     enterprise (Mario
>> G)
>>    2. Re: Username in SUBSCRIBE Request URI (Duvid Rottenberg)
>>    3. Central FreeSWITCH nodes management with  Mod_XML_Curl vs
>>       Mod_Lua (Eugene Azuka)
>>    4. Re: Central FreeSWITCH nodes management with Mod_XML_Curl vs
>>       Mod_Lua (Vik Killa)
>>    5. Re: Central FreeSWITCH nodes management with Mod_XML_Curl vs
>>       Mod_Lua (Michael Collins)
>>    6. Looking for dial plan examples for FS and SPA3102 router
>>       (Todd Bailey)
>>    7. Re: Central FreeSWITCH nodes management with Mod_XML_Curl vs
>>       Mod_Lua (Gabriel Gunderson)
>>
>>
>> ---------- Forwarded message ----------
>> From: Mario G <mario_fs at mgtech.com>
>> To: FreeSWITCH Users Help <freeswitch-users at lists.freeswitch.org>
>> Cc:
>> Date: Tue, 17 Jul 2012 09:54:51 -0700
>> Subject: [Freeswitch-users] how to get leg_delay_start to work for bridge
>> enterprise
>> I am try to delay the second target by 20 seconds. I used [..] and {..}
>> but no dice. The wiki has them both for enterprise, can someone shed light
>> on what's wrong, thanks. Main is supposed to ring, 20 secs later the second
>> target is added while main keeps going, all timeout after a total of 43
>> secs.
>> Mario G
>>
>> <action application="bridge" data=
>> "<originate_timeout=43,origination_caller_id_number=${caller_id_number},origination_caller_id_name=${caller_id_name}>${group_call(main@
>> ${domain_name}+E)}:_:{leg_delay_start=20}sofia/gateway/${dial_gateway}/19161234567"
>> />
>>
>>
>> ---------- Forwarded message ----------
>> From: Duvid Rottenberg <adrottenberg at gmail.com>
>> To: FreeSWITCH Users Help <freeswitch-users at lists.freeswitch.org>
>> Cc:
>> Date: Tue, 17 Jul 2012 14:01:20 -0400
>> Subject: Re: [Freeswitch-users] Username in SUBSCRIBE Request URI
>> Apparently this is not currently possible. I have submitted a patch on
>> JIRA to add a new parameter to the subscriptions section named
>> user-in-register, when set to true the username will be included in the
>> request-uri. If/when this patch is approved I will update the wiki.
>>
>> On Fri, Jul 13, 2012 at 1:34 PM, Duvid Rottenberg <adrottenberg at gmail.com
>> > wrote:
>>
>>> I am using embedded freeswitch as a softphone client and I am trying to
>>> subscribe to call-info on the server, (see config below) but the server is
>>> responding with a 481 Call/Transaction Does not exist.
>>> I compared the freeswitch SIP messages with SIP messages sent by a
>>> polycom phone for this feature and  I noticed that freeswitch doesn't send
>>> the username in the request line. I think that this is causing the 481
>>> response.
>>>
>>> Polycom Version:
>>> SUBSCRIBE sip:user at server:5060;transport=udp SIP/2.0
>>> Freeswitch:
>>> SUBSCRIBE sip:server:5060;transport=udp SIP/2.0
>>>
>>> Below is my gateway configuration
>>> <gateway name='1'>
>>>     <param name='realm' value='SIP_SERVER' />
>>>     <param name='username' value='SIP_USERNAME' />
>>>     <param name='password' value='SIP_PASSWORD' />
>>>     <param name='register' value='true' />
>>>     <param name='extension' value='SIP_USERNAME' />
>>>     <param name='extension-in-contact' value='true' />
>>>     <subscriptions name='x'>
>>>         <subscription event='call-info'>
>>>             <param name='retry-seconds' value='40'/>
>>>             <param name='expire-seconds' value='3600'/>
>>>             <param name='content-type' value=''/>
>>>         </subscription>
>>>     </subscriptions>
>>> </gateway>
>>>
>>> Is there any way to tell freeswitch to include the username in the
>>> request line?
>>>
>>> Thank You,
>>> Duvid Rottenberg
>>>
>>
>>
>>
>> ---------- Forwarded message ----------
>> From: Eugene Azuka <eugeneazuka at gmail.com>
>> To: freeswitch-users at lists.freeswitch.org
>> Cc:
>> Date: Tue, 17 Jul 2012 17:33:56 +0100
>> Subject: [Freeswitch-users] Central FreeSWITCH nodes management with
>> Mod_XML_Curl vs Mod_Lua
>> Hi FreeSWITCH experts,
>>
>> My question is as regards performance and which is the best option.
>>
>> I am trying to scale and manage multiple nodes of FreeSWITCH centrally
>> from my external web server/site using Mod_XML_Curl, But someone more
>> experience than me says otherwise that Mod_XML_Curl may not be the best
>> option: Here is his statement below:
>>
>> *" The thing I don't like about mod_xml_curl is that to scale it you
>> have to scale the web server with more listeners. If you run out of
>> listeners your ability to answer new calls fails. If the web server crashes
>> your ability to handle calls is gone.*
>> *
>> *
>> *Instead, I use Lua which is embedded into FreeSWITCH as the XML
>> handler. The Lua reads the info from the database and hands it off to
>> FreeSWITCH. This approach is not dependent on a service that can fail, or
>> that can run out of listeners. "*
>>
>>
>> What do you experts think about this comment above?
>>
>> Wouldn't Lua reading directly from database still face some of the issues
>> i may be running from using mod_xml_curl, like database crashing, slow
>> reading from database?
>>
>> Unlike using mod_xml_curl whereby i can optimise my code to make use of
>> memcached or radis to reduce some calls to database, can i still do such
>> with mod_lua?
>>
>>
>> So what do experts think, should i go with Mod_Lua approach just as he
>> said above or should i continue with using Mod_XML_Curl?
>>
>> You opinion will be appreciated.
>>
>> Regards
>>
>> Eugene
>>
>>
>>
>>
>>
>>
>> ---------- Forwarded message ----------
>> From: Vik Killa <vipkilla at gmail.com>
>> To: FreeSWITCH Users Help <freeswitch-users at lists.freeswitch.org>
>> Cc:
>> Date: Tue, 17 Jul 2012 15:30:53 -0400
>> Subject: Re: [Freeswitch-users] Central FreeSWITCH nodes management with
>> Mod_XML_Curl vs Mod_Lua
>> I dont understand what they meant by 'listeners'
>> AFAIK if the web server process is running it will always return the XML
>>
>>
>>
>>
>> ---------- Forwarded message ----------
>> From: Michael Collins <msc at freeswitch.org>
>> To: FreeSWITCH Users Help <freeswitch-users at lists.freeswitch.org>
>> Cc:
>> Date: Tue, 17 Jul 2012 13:56:11 -0700
>> Subject: Re: [Freeswitch-users] Central FreeSWITCH nodes management with
>> Mod_XML_Curl vs Mod_Lua
>>
>>
>> On Tue, Jul 17, 2012 at 12:30 PM, Vik Killa <vipkilla at gmail.com> wrote:
>>
>>> I dont understand what they meant by 'listeners'
>>> AFAIK if the web server process is running it will always return the XML
>>>
>>
>> Last time I checked, there were one or two websites out there that could
>> handle thousands of requests per second. The web has given birth to tools
>> that allow for many, many concurrent requests. The LAMP stack on a beefy
>> machine can do quite a lot of traffic. Furthermore, MySQL/Postgres/et al
>> all have backup/redundancy/HA options built in, as does Apache/HTTP. It
>> seems to me that you could scale farther and have more redundancy using
>> these time-tested tools. Just my $0.02.
>>
>> -MC
>>
>> P.S. - Don't get me wrong - I really like Lua. I just don't know if it's
>> really a "better" solution to this problem.
>>
>>
>> ---------- Forwarded message ----------
>> From: Todd Bailey <toddb at toddbailey.net>
>> To: freeswitch <freeswitch-users at lists.freeswitch.org>
>> Cc:
>> Date: Tue, 17 Jul 2012 15:37:51 -0700
>> Subject: [Freeswitch-users] Looking for dial plan examples for FS and
>> SPA3102 router
>> Hi All,
>>
>>
>> I'm having issues getting a dial plan to work on FS and a Cisco SPA 3102
>> router.
>>
>> when I dial 0, 1 or 9 plus a 10 number, I get to the router's dial tone
>> but I have to reenter the number I want to connect to.
>>
>> The expected action is to only need to enter the number to dial one
>>
>> Can some one provide dial plan and/or other config file example on how
>> to resolve this issue?
>>
>> here is what I have so far:
>>
>> /usr/local/freeswitch/conf/dialplan/default.xml
>>
>> <!-- Dial any 10 digit number (2223334444) or 1+10 number (12223334444)
>> or 9 + 10 number here -->
>>
>>     <extension name="external">
>>
>>     <condition field="destination_number"
>> expression="^(1{0,1,9}\d{10})$">
>>
>>       <action application="set"
>> data="effective_caller_id_number=12223334444"/>
>>       <!-- If your provider does not provide ringback (180 or 183) you
>> may simulate ringback by uncommenting the following line. -->
>>       <!-- action application="ringback" /-->
>>       <!-- <action application="bridge"
>> data="sofia/gateway/voicepulse/$1"/> -->
>>       <!-- <action application="bridge"
>> data="sofia/internal/${destination_number}@192.168.1.5:5061"/>   -->
>>            <action application="bridge"
>> data="sofia/internal/$1 at 192.168.1.5:5061" />
>>      </condition>
>>    </extension>
>>
>>
>> /usr/local/freeswitch/conf/dialplan/default/00_spa3102.xml
>>
>> <include>
>>   <extension name="To PSTN">
>>     <condition field="destination_number" expression="(.*)">
>>       <action application="bridge"
>> data="sofia/internal/${destination_number}@192.168.1.5:5061" />
>>     </condition>
>>   </extension>
>> </include>
>>
>>
>>
>>
>>
>>
>>
>>
>> ---------- Forwarded message ----------
>> From: Gabriel Gunderson <gabe at gundy.org>
>> To: FreeSWITCH Users Help <freeswitch-users at lists.freeswitch.org>
>> Cc:
>> Date: Tue, 17 Jul 2012 16:40:41 -0600
>> Subject: Re: [Freeswitch-users] Central FreeSWITCH nodes management with
>> Mod_XML_Curl vs Mod_Lua
>> Comments inline:
>>
>> On Tue, Jul 17, 2012 at 10:33 AM, Eugene Azuka <eugeneazuka at gmail.com>
>> wrote:
>> > " The thing I don't like about mod_xml_curl is that to scale it you
>> have to
>> > scale the web server with more listeners. If you run out of listeners
>> your
>> > ability to answer new calls fails. If the web server crashes your
>> ability to
>> > handle calls is gone.
>>
>> Scaling web servers is an easy, well known and a common problem to
>> solve. Yes, you have to make sure you have the resources, but this it
>> true of any technology out there.
>>
>>
>> > Instead, I use Lua which is embedded into FreeSWITCH as the XML
>> handler. The
>> > Lua reads the info from the database and hands it off to FreeSWITCH.
>> This
>> > approach is not dependent on a service that can fail, or that can run
>> out of
>> > listeners. "
>>
>> This is a great approach, but I don't think the logic is sound. Lua
>> (if it's doing anything fancy) will run out of resources that it
>> depends on -- memory, database connections, sockets etc.
>>
>> If one accepts that they'll have to build out to *really* scale
>> something, they'll also come to appreciate the fact that they can move
>> the HTTP stack to another box when needed (or 50 other boxen if
>> required).  The Lua (or any other embedded language) is pretty well
>> tied to that same box.
>>
>> In the end, it probably doesn't matter. If you end up scaling to the
>> ends of the Earth, you'll have to rewrite it anyway. Just give thanks
>> that you've found FreeSWITCH and it was flexible enough to give you
>> the amazing configurability needed to build it in anyway you like :)
>>
>>
>> > What do you experts think about this comment above?
>>
>> There are experts on this list now?! Awesome ;)
>>
>>
>> > Wouldn't Lua reading directly from database still face some of the
>> issues i
>> > may be running from using mod_xml_curl, like database crashing, slow
>> reading
>> > from database?
>>
>> Yep, see above.
>>
>>
>>
>> > Unlike using mod_xml_curl whereby i can optimise my code to make use of
>> > memcached or radis to reduce some calls to database, can i still do such
>> > with mod_lua?
>>
>> If you want and Lua supports it.
>>
>>
>> > So what do experts think, should i go with Mod_Lua approach just as he
>> said
>> > above or should i continue with using Mod_XML_Curl?
>>
>> Your choice! Happy hacking!
>>
>>
>> Best,
>> Gabe
>>
>>
>>
>> _______________________________________________
>> 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
>
> Join Us At ClueCon - Aug 7-9, 2012
>
> 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/20120718/147b3239/attachment-0001.html 


Join us at ClueCon 2011 Aug 9-11, 2011
More information about the FreeSWITCH-users mailing list