[Twisted-Python] adbapi MySQL read/write splitting

Jason J. W. Williams jasonjwwilliams at gmail.com
Tue Aug 31 22:54:12 EDT 2010

That's one way of handling it. Another way is to wrap the library so
it does the splitting automatically. The advantage to the latter is
not making mistakes where you accidentally use the READ connection for
a write. For non-async Python there are some tools like SQL Relay
which will do this for you, but you have to setup SQL Relay servers
and use the SQL Relay dbapi driver. MySQL Proxy will also do it, but
it's not very stable.

I was somewhat hoping someone had already written a wrapper for doing
the splitting. Which brings me to a related question...if I were to
write a wrapper to do the splitting, would wrapping MySQLdb be
sufficient? Or would wrapping adbapi be the better path?


On Tue, Aug 31, 2010 at 8:40 PM, Itamar Turner-Trauring
<itamar at itamarst.org> wrote:
> On Tue, 2010-08-31 at 20:36 -0600, Jason J. W. Williams wrote:
>> Sending writes (e.g. INSERTs and UPDATEs) to a master MySQL server and
>> reads (SELECTs) to a slave.
> So... two adbapi.ConnectionPool instances, one for the server, one for
> the slave?
> _______________________________________________
> Twisted-Python mailing list
> Twisted-Python at twistedmatrix.com
> http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python

More information about the Twisted-Python mailing list