Since the things that FS does (transcoding, tone detection, etc) can be CPU intensive, you might want multiple servers to spread the load. So, you can have a pool of identically-configured FS servers load balanced by something like opensips, with the (typically lighter-weight) application logic handled outside of that pool of servers. FS here just provides resources for the application to use.
In this type of setup, you can pick between an application that actively controls the FS apps to execute (mod_event_socket, mod_erlang_event) or one that feeds FS higher-level scripts to execute on demand (mod_httapi, mod_xml_curl).
Chris
Hey Chris,
Could you explain what you mean by clustering FS? I get the idea of clustering, in general, but I what do you mean in this context?
Thanks!
Brett
From: freeswitch-users-bounces@lists.freeswitch.org [mailto:freeswitch-users-bounces@lists.freeswitch.org] On Behalf Of Christopher Rienzo
Sent: Friday, September 07, 2012 12:14 PM
To: FreeSWITCH Users Help
Subject: Re: [Freeswitch-users] best FS interface for development
For arbitrarily large and complex systems, I'd keep FreeSWITCH as dumb as possible so that you can easily cluster them. So, modules that allow external control (mod_event_socket, mod_erlang_event, mod_httapi, mod_xml_curl) are all good choices.
Event socket is pretty popular; Plivo and Adhearsion both use it. The 2600hz guys use mod_erlang_event. And I've heard of plenty of people that use mod_xml_curl.
Chris
On Fri, Sep 7, 2012 at 9:43 AM, Brett Clark - Grasshopper <bclark@grasshopper.com> wrote:
There seems to be at least 4 general ways for customizing FS:
- Use the event socket and build an app to interface with it
- Use mod lua, or similar, to develop in a particular language
- Develop your own ‘module’ to interface directly with the core
- Use the XML interface to implement IVR, PBX, and voicemail type functionality and all the rest.
How prevalent is each approach in the community? It seems like everyone is doing a little of both, but maybe someone has a better handle of what the actual ratios are?
Which is best suited for an arbitrarily large and complex application? I realize this isn’t a simple question—what I want is to understand the most evolved and featureful way to interface with FS? I don’t want to adopt an approach which isn’t being actively maintained or is missing features. As new stuff is added to FS, which approach will allow me to adopt those new features most easily?
Thanks!
Brett
_________________________________________________________________________
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