I’m currently using Percona Cluster for the HA aspect and have my application configured to use only a single node at any given time in a 3 node cluster. This essentially treats one node as a master and the other 2 nodes as slaves. If I were to use all 3 nodes in a normal multi-master configuration, is there any performance benefit to this from a write standpoint? Since a write to one node is written to the others as well, it would seem you are putting the same burden on the cluster regardless if you write to a single node or load balance to all 3. I understand there would be a read performance benefit, I just want to know if splitting the writing between the 3 nodes would also provide a write performance benefit? Thanks.
Hello,
It all depends on how your writes are configured.
If you continue to write/update the same tables from 3 different nodes, there are increased chances of conflicts (again depends on data) and so you may need to retry failed transaction.
But say you plan to update different tables from 3 different nodes you may see an improved performance given you are getting consistent data on all 3 nodes.
(Read as you pointed always gain from 3 nodes)
Important: Please use PXC-5.7 for improved performance. Starting 5.7.17 we have fixed major performance bottleneck in PXC. Latest PXC is 5.7.24
Regards,
Krunal