[development] Re: enterprise needs

Dries Buytaert dries.buytaert at gmail.com
Mon Feb 27 16:37:22 UTC 2006

> I will point to the fact that currently drupal will not support  
> mysql's
> replication technology since we haven't implemented a concept of
> slave/master...
> Two quick ways I can think of adding it are...
> 1) further db abstraction ala, db_select, db_insert, db_update.....
> 2) and using a if (!strpos('SELECT', $query))
> { db_set_active('master') } in db_query.
> with 1) you may get slightly better performance since you aren't
> constantly parsing strings, but you start making some major changes to
> drupal's db_abstraction layer.

Are you suggesting that we add a connection pooling mechanism to  
Drupal?  I'm not convinced that is a good idea.  There are both  
software and hardware load balancer that do exactly that.  You open a  
MySQL connection to db-server.example.com (the load balancer) which  
map it onto db-server-1.example.com, db-server-2.example.com, etc.   
These load balancers can do 'health checks' to see if the database  
servers are still running, whether they are in a consistent state,  
whether they are properly replicated, etc.  Good health checks can be  
complicated and therefore this could be tricky to implement in PHP ...

Dries Buytaert  ::  http://www.buytaert.net/

More information about the development mailing list