On Fri, 27 Oct 2000, Tim Bunce wrote:

> On Thu, Oct 26, 2000 at 08:47:20PM +0100, Matt Sergeant wrote:
> > On Tue, 24 Oct 2000, Jeff Horn wrote:
> > 
> > > However, I am also aware of a _major_ ISP that implements their email
> > > system using a _major_ RDBMS that has had problems that are best
> > > solved via connection pooling.  Essentially, the time it takes them to
> > > search through all the cached connections is nearly as long as the
> > > time it is taking to read/write to the database.  Although, I'm not
> > > implementing email as this ISP is, I think that scalability in my case
> > > may definitely run into similar roadblocks.
> > > 
> > > I am interested in hearing from anyone that has tried to implement
> > > true connection pooling either within Apache or as an external
> > > process.  I'm particularly interested in hearing about implementations
> > > that could be made to work or are done using Perl and DBI/DBD.  I am
> > > mostly interested in things that are Open Source or licensed like Perl
> > > itself.
> > 
> > Having just returned from ApacheCon, I can honestly recommend looking at
> > mod_backhand to simply have a few servers that run the DBI pool, and have
> > database intensive requests go to those servers. It is a *very* cool
> > solution to just these sorts of scalability problems.
> 
> To redirect incoming url's that require database work to mod_perl 'heavy'
> servers? Just like a smarter and more dynamic mod_rewrite? Yes?

Yes basically, except its not a redirect. mod_backhand can use keep-alives
to ensure that it never has to recreate a new connection to the heavy
backend servers, unlike mod_rewrite or mod_proxy. And it can do it in a
smart way so that remote connections don't use keepalives (because they
are evil for mod_perl servers - see the mod_perl guide), but backhand
connections do. Very very cool technology.

> Or, here's an odd thought that just crossed my mind...
> 
> You could have a set of apache servers that are 'pure' DBI proxy servers.
> That is, they POST requests containing SQL (for prepare_cached) plus
> bind parameter values and return responses containing the results.
> 
> Basically I'm proposing that apache be used as an alternative framework for
> DBI::ProxyServer. Almost all the marshaling code and higher level logic
> is already in DBI::ProxyServer and DBD::Proxy. Shouldn't be too hard to do
> and you'd gain in all sorts of ways.
> 
> Anyone fancy having a go? Let me know so we can discuss it in more detail.

Sounds like just a CORBA/RPC type thing. Wouldn't you be better off using
CORBA::ORBit?

-- 
<Matt/>

    /||    ** Director and CTO **
   //||    **  AxKit.com Ltd   **  ** XML Application Serving **
  // ||    ** http://axkit.org **  ** XSLT, XPathScript, XSP  **
 // \\| // **     Personal Web Site: http://sergeant.org/     **
     \\//
     //\\
    //  \\

Reply via email to