> The proxy monitors and forwards the requests from the clients to the
> database servers. If it is a read-only request the query is forwarded to
> the databaseserver currently experiencing the lowest load/most free
> memory, otherwise it is sent to all database servers.
>
> This approach obviously only performs well in systems with a high ratio of
> read-only queries, such as search engines and so on.
The tough part is syncronicity, should one of the machines drop out of the
cluster and need to be re-added without bringing the others down. In order
to get around that, each query needs to be logged on the master node with a
timestamp, so that the failed node can "catch up" in real-time. That brings
about other considerations, as well....
steve