Wie funktioniert das Load Balancing bei der AWS Datenbank "Aurora"?
Schon bei der RDS MySQL Lösung von AWS gibt es die Möglichkeit, sogenannte Read Replicas einzusetzen. Read Replicas machen dann Sinn, wenn eine Applikation sehr hohe Datenbanklast bei lesenden Anfragen erzeugt und man diese auf mehrere Datenbanken verteilen will. Auf die Read Replicas greift die Applikation dann lesend zu, während (nur noch) die Schreibzugriffe auf der Master-Datenbank ankommen. Bei RDS MySQL muss jedes Read Replica einzeln angesprochen werden. Bei der MySQL-kompatiblen AWS Aurora gibt es hierfür eine Lösung: über einen separaten zentralen Endpunkt kann man verteilt (Load Balancing) auf alle Read Replicas zugreifen. Somit ergibt sich die Möglichkeit, weitere "Read-Only" Datenbanken bei Bedarf hinzuzuschalten und damit die lesenden Anfragen der Applikation zu skalieren (vgl. AWS Blogpost). Diese Skalierung ist jedoch nicht dem horizontalen Autoscaling von Webservern vergleichbar.