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

Ben Langfeld ben at langfeld.co.uk
Wed Jul 18 15:50:21 MSD 2012


I was thinking more short-term caching. It would be a valid way of
optimising the entity providing the XML.

Regards,
Ben Langfeld


On 18 July 2012 12:32, Avi Marcus <avi at avimarcus.net> wrote:

> Caching the entire response and xml curl don't usually go together...
>
> If it's something unchanging, then do it in static XML.
> To serve that over the network from a central location, see:
> http://wiki.freeswitch.org/wiki/Mod_xml_curl#Storing_Static_Dialplans
>
> Although you'd still have to trigger a reloadxml when that changes.
> -Avi
>
>
> On Wed, Jul 18, 2012 at 2:27 PM, Ben Langfeld <ben at langfeld.co.uk> wrote:
>
>> 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
>>>
>>>
>>
>> _________________________________________________________________________
>> 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
>>
>>
>
> _________________________________________________________________________
> 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/659dc4d7/attachment-0001.html 


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