Some early tests seem to show that read/write splitting works nicely.
Check out the latest SVN code and read the examples from
http://svn.mysql.com/svnpublic/mysql-proxy/trunk/examples/tutorial-keepalive.lua
For testing I used a local replication setup with :3306 been the master and :3307, 8 and 9 being the slaves.
$ ./src/mysql-proxy --no-daemon \
--proxy-lua-script=./examples/tutorial-keepalive.lua \
--proxy-backend-addresses=:3306 \
--proxy-read-only-backend-addresses=:3307 \
--proxy-read-only-backend-addresses=:3308 \
--proxy-read-only-backend-addresses=:3309
The connect_server() call tries to setup the connection pool and connect the each backend at least once. If we see a SELECT query outside of a transaction we try to balance it over the slaves.
--
Jan Kneschke, MySQL Enterprise Tools