Brussels / 1 & 2 February 2014


MaxScale, the Pluggable Router

Flexible database clusters impose challenges in terms of load balancing, load splitting, write conflict avoidance, and service availability to name a few. MaxScale is a highly modular proxy with a pluggable API, which assists in offloading tasks away from both clients and the back-end servers. In its simplest form it acts as a non-blocking zero-copy load balancer for read-only connections, while in the other extreme it examines packets and parses queries, which are then processed according to the dynamically changeable rules exposed by plugged-in modules.

At its core MaxScale is a server handling massively parallel client load and processing it according to the associated router. Connections are handled with epoll, and whenever possible, packets are routed without making unnecessary copies of them. MaxScale has efficient, flexible and rich logging facilities including logging on disk, to shared memory or to syslog. MaxScale is opensource software, licensed under the GPLv2, providing a plug-in API for query routing, server monitoring and for protocols such as MySQL and httpd. Pluggable authentication is in plans. Initially supported platforms are CentOS and Debian on x86_64. In our presentation we introduce the architecture of MaxScale, modularity, the plug-in API, how it is integrated with Galera and MySQL replication, and some typical use cases.


Massimiliano Pinto
Vilho Raatikka