[asterisk-dev] Connection Pooling

Tilghman Lesher tilghman at mail.jeffandtilghman.com
Mon Oct 23 12:44:57 MST 2006


On Monday 23 October 2006 14:02, Greg Boehnlein wrote:
> On Mon, 23 Oct 2006, Tilghman Lesher wrote:
> > On Thursday 19 October 2006 02:22, Alexandr Olekhnovich wrote:
> > > I'm using asterisk => uniODBC (FreeTDS driver) => MS SQL. So I
> > > have to make odbc connection pooling to MS SQL.
> >
> > Since you're using MS SQL, by and large, you'll need to use 1.4
> > res_odbc to combat the problems inherent in the TDS protocol.  See
> > the sample configuration file in 1.4 for more information.  If you
> > do not use the facilities provided in 1.4, you will have severe
> > problems any time you attempt more than one concurrent query.
>
> Tilghman,

Since you addressed me, I'm assuming you didn't mean for this to go to
the list?

> 	Blitzrage and I were discussing func_odbc, and we were wondering
> where the best place to build failover into the system might be. We
> figured it could done at several places:
>
> 1. In the DialPlan w/ func_odbc itself
> 2. At the ODBC level
> 3. At a Layer 3/4 load balancer level
> 4. At the Database Server itself (clustering etc..)
>
> Any thoughts?

My thought is that it depends upon what type of failure in the database
that you're trying to address and which type of database you're using.
Option 1 would definitely work all the time and for the most types of
failures.  Unfortunately, it's also the most complex to configure
correctly.  I don't know that option 2 is available.  Option 3 is
unlikely to work for these stateful connections.  Option 4 is vendor
dependent on how well it works and how well it behaves for the type
of failure.

Really, you need to detail what type(s) of failure you're trying to work
around before you'll be able to figure out a good way of addressing
it/them.

-- 
Tilghman


More information about the asterisk-dev mailing list