[Freeswitch-users] (yet another?) freeswitch load balancer

Dave Horton dave at dchorton.com
Tue Dec 1 17:36:00 MSK 2015


When people talk about stateful or stateless there can be different interpretations, so I will try to be specific:

Call stateful (or stateless): meaning whether the proxy remains in the dialog after a successful INVITE transaction (e.g. to receive subsequent BYE message, in order to do accounting etc).  With this proxy, you have a choice of whether to be call stateful or not (depends on setting of the ‘remainInDialog’ property to the req.proxy method)

Stateless proxy: an entity that does not maintain transaction state of client or server SIP transactions, simply forwards request.  This proxy is _not_ a stateless proxy, because it needs to maintain transaction state in order to do things like handle temporary failures from one freeswitch and then land the call on another.

Dave

On Dec 1, 2015, at 9:14 AM, Regis M <regis.freeswitch.org at tornad.net> wrote:

Hi Dave,

Does your proxy could act as a stateless proxy or not ?
I'm looking for a stateless proxy, I had ever test your solution but haven't find the answer to this question during my test.

Thanks

Regards,


2015-12-01 14:32 GMT+01:00 Dave Horton <dave at dchorton.com <mailto:dave at dchorton.com>>:
It is a proxy.  I am using the sofia sip stack (specifically nta) which is capable of any type of sip processing, but this application uses it as a SIP proxy.


On Dec 1, 2015, at 8:20 AM, Vik Killa <vipkilla at gmail.com <mailto:vipkilla at gmail.com>> wrote:

Hi,
I see this is described as a SIP Proxy but you are using the sofia SIP stack.
Is this technically a B2BUA or a Proxy?
Thanks,
/V

On Tue, Dec 1, 2015 at 8:14 AM, Dave Horton <dave at dchorton.com <mailto:dave at dchorton.com>> wrote:
I’ve developed a nodejs-based freeswitch load balancer that may be of interest to those who prefer Javascript to configuration file-driven routing.  Even better if you are a nodejs developer familiar with expressjs or connect, then you may find the nuts of it to be very simple:


app.invite( function(req, res) {
   ...
    req.proxy({
       remainInDialog: false,
       handleRedirects: true,
       provisionalTimeout: '1s',
       destination: targets
    }, function(err) {
      if( err ) {
        console.error('Error proxying request: ', err) ;
      }
   }) ;
}) ;


Details here:

http://davehorton.github.io/drachtio-fs-load-balancing-proxy/ <http://davehorton.github.io/drachtio-fs-load-balancing-proxy/>





_________________________________________________________________________
Professional FreeSWITCH Consulting Services:
consulting at freeswitch.org <mailto:consulting at freeswitch.org>
http://www.freeswitchsolutions.com <http://www.freeswitchsolutions.com/>

Official FreeSWITCH Sites
http://www.freeswitch.org <http://www.freeswitch.org/>
http://confluence.freeswitch.org <http://confluence.freeswitch.org/>
http://www.cluecon.com <http://www.cluecon.com/>

FreeSWITCH-users mailing list
FreeSWITCH-users at lists.freeswitch.org <mailto:FreeSWITCH-users at lists.freeswitch.org>
http://lists.freeswitch.org/mailman/listinfo/freeswitch-users <http://lists.freeswitch.org/mailman/listinfo/freeswitch-users>
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users <http://lists.freeswitch.org/mailman/options/freeswitch-users>
http://www.freeswitch.org <http://www.freeswitch.org/>
_________________________________________________________________________
Professional FreeSWITCH Consulting Services: 
consulting at freeswitch.org <mailto:consulting at freeswitch.org>
http://www.freeswitchsolutions.com <http://www.freeswitchsolutions.com/>

Official FreeSWITCH Sites
http://www.freeswitch.org <http://www.freeswitch.org/>
http://confluence.freeswitch.org <http://confluence.freeswitch.org/>
http://www.cluecon.com <http://www.cluecon.com/>

FreeSWITCH-users mailing list
FreeSWITCH-users at lists.freeswitch.org <mailto:FreeSWITCH-users at lists.freeswitch.org>
http://lists.freeswitch.org/mailman/listinfo/freeswitch-users <http://lists.freeswitch.org/mailman/listinfo/freeswitch-users>
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users <http://lists.freeswitch.org/mailman/options/freeswitch-users>
http://www.freeswitch.org <http://www.freeswitch.org/>

_________________________________________________________________________
Professional FreeSWITCH Consulting Services:
consulting at freeswitch.org <mailto:consulting at freeswitch.org>
http://www.freeswitchsolutions.com <http://www.freeswitchsolutions.com/>

Official FreeSWITCH Sites
http://www.freeswitch.org <http://www.freeswitch.org/>
http://confluence.freeswitch.org <http://confluence.freeswitch.org/>
http://www.cluecon.com <http://www.cluecon.com/>

FreeSWITCH-users mailing list
FreeSWITCH-users at lists.freeswitch.org <mailto:FreeSWITCH-users at lists.freeswitch.org>
http://lists.freeswitch.org/mailman/listinfo/freeswitch-users <http://lists.freeswitch.org/mailman/listinfo/freeswitch-users>
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users <http://lists.freeswitch.org/mailman/options/freeswitch-users>
http://www.freeswitch.org <http://www.freeswitch.org/>

_________________________________________________________________________
Professional FreeSWITCH Consulting Services: 
consulting at freeswitch.org
http://www.freeswitchsolutions.com

Official FreeSWITCH Sites
http://www.freeswitch.org
http://confluence.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/20151201/1b73f985/attachment-0001.html 


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