Dans votre console RDS, vous devriez être en mesure d'examiner chacune des 3 instances
- aurora-databasecluster-xxx.cluster-yyy.us-east-1.rds.amazonaws.com:3306
- zz0.yyy.us-east-1.rds.amazonaws.com:3306
- zz1.yyy.us-east-1.rds.amazonaws.com:3306
Si vous regardez l'onglet du cluster vous verrez deux points de fin et le 2ème est le suivant: aurora- Aurora vous permet d'accéder explicitement à une réplique lue spécifique. Cela permettrait un ensemble de nœuds en lecture seule pour les performances OLTP et un autre ensemble pour l'analyse des données - avec des requêtes longues qui n'affecteront pas les performances. Si vous utilisez le point de terminaison -ro, il doit équilibrer tous les nœuds en lecture seule ou vous pouvez demander à votre code de prendre une liste de chaînes de connexion en lecture seule et de faire votre propre randomiseur. Je m'attendais à ce que le ro soit meilleur ... mais je ne suis pas encore familier sur leur technique d'équilibrage de charge (plus petit nombre de connexions, round robin, etc.)
Votre application est-elle configurée pour envoyer des écritures au point de terminaison d'écriture Aurora, et lit à l'extrémité de lecture Aurora? –
Oui. Il travaillait avec une seule réplique en réalité. Puis j'ai ajouté un second, et utilise toujours le premier. D'après ma compréhension Aurora dans ce cas est la création d'un cluster, donc je ne devrais rien changer dans mon code. Le cluster devrait distribuer les demandes de lecture (peut-être que je me trompe bien sûr) –
Chaque instance a un nom d'hôte, et le cluster a un nom d'hôte pour l'écrivain et un pour "tout" lecteur [comme je l'ai décrit dans Server Fault] (http://serverfault.com/a/809299/153161). Utilisez-vous le nom d'hôte 'cluster-ro'? –