Le proxy de base de données ApsaraDB RDS for MySQL est un service de proxy réseau situé entre votre base de données et votre application. Ce proxy gère toutes les requêtes envoyées par l'application à la base de données et simplifie la gestion des connexions pour les instances RDS MySQL.
Utilisez le proxy de base de données d'ApsaraDB RDS for MySQL lorsque votre instance principale subit une charge élevée ou lorsque vous avez besoin d'une protection contre les interruptions lors d'opérations de maintenance, telles que les basculements. Le fractionnement lecture/écriture assure l'équilibrage de charge du trafic de service et réduit la charge CPU sur l'instance principale. Les connexions persistantes (protection contre les interruptions) maintiennent actives les connexions entre votre application et le proxy, tandis que le chiffrement SSL sécurise la transmission des données. Ces fonctionnalités améliorent la disponibilité et la sécurité de l'instance.
Scénarios
Le proxy de base de données ApsaraDB RDS for MySQL s'applique aux scénarios suivants :
Charges de travail nécessitant un fractionnement lecture/écriture
Scénarios exigeant une protection contre les interruptions lors d'opérations de maintenance (telles que les basculements) ou en cas de panne
Scénarios où l'instance principale est fortement sollicitée (grand nombre de requêtes au sein d'une transaction ou trop de connexions)
Charges de travail utilisant principalement des connexions éphémères
Scénarios nécessitant un accès au nœud le plus proche pour réduire la latence d'accès
Charges de travail en lecture seule et charges de travail nécessitant une isolation
Par exemple, vous achetez une instance RDS composée d'une instance principale et de quatre instances en lecture seule, et vous souhaitez connecter à la fois l'Application A (lecture seule) et l'Application B (lecture et écriture) à cette instance. Vous pouvez regrouper l'instance en lecture seule 1 et l'instance en lecture seule 2 dans le point de terminaison de proxy A (mode Read-only) pour l'Application A, et regrouper l'instance principale, l'instance en lecture seule 3 et l'instance en lecture seule 4 dans le point de terminaison de proxy B (mode Read/Write) pour l'Application B. Les deux charges de travail sont alors physiquement isolées dans leur utilisation de la base de données et ne s'affectent pas mutuellement.
Termes
Point de terminaison de proxy (anciennement terminal de proxy)
Le point de terminaison de proxy constitue le cœur du proxy de base de données. Il prend en charge des politiques d'accès personnalisées et vous permet de modifier le préfixe du point de terminaison ainsi que le numéro de port. Connectez-vous à l'instance RDS via un point de terminaison de proxy de base de données pour utiliser les fonctionnalités avancées du proxy.
Une fois le proxy de base de données activé, vous pouvez demander un point de terminaison interne et un point de terminaison public pour chaque point de terminaison de proxy, et personnaliser la politique d'accès de chacun afin de répondre aux exigences des scénarios courants et d'améliorer la flexibilité métier. Pour plus d'informations, consultez les rubriques Configurer les politiques d'accès pour un point de terminaison de proxy de base de données et Connexion à la base de données.
Fractionnement lecture/écriture
Le fractionnement lecture/écriture désigne le transfert automatique des requêtes de lecture et d'écriture via un point de terminaison de proxy.
Les applications qui effectuent plus de lectures que d'écritures peuvent exercer une forte pression de lecture sur l'instance principale et affecter votre activité. Le fractionnement lecture/écriture transfère automatiquement les requêtes d'écriture vers l'instance principale et les requêtes de lecture vers les instances en lecture seule. Cela permet une distribution automatique des requêtes et réduit la charge sur l'instance principale.
Connexions persistantes
La fonctionnalité de connexions persistantes du proxy RDS MySQL maintient la connexion entre l'application et le proxy active lors d'opérations telles que les basculements d'instance. Les applications accédant à la base de données via le point de terminaison de proxy ne reçoivent pas d'erreurs de déconnexion.
Fractionnement des transactions
Le proxy de base de données active par défaut le fractionnement des transactions. Cette fonctionnalité transfère les requêtes de lecture intervenant avant une opération d'écriture au sein d'une transaction vers les instances en lecture seule, ce qui réduit la charge sur l'instance principale.
Pool de connexions
La fonctionnalité de pool de connexions résout efficacement la surcharge de l'instance causée par un nombre excessif de connexions ou par des charges de travail utilisant des connexions éphémères (comme PHP) et établissant fréquemment de nouvelles connexions.
Zone
La zone est l'emplacement où résident les nœuds de proxy et le point de terminaison de proxy. Après avoir activé le proxy de base de données, la fonction Migrer des nœuds de proxy entre zones est disponible.
Accès au nœud le plus proche
Lorsque le proxy de base de données utilise un déploiement multi-zones, vous pouvez activer la fonctionnalité d'accès au nœud le plus proche. Cette fonctionnalité permet de connecter une application spécifiée à un nœud de proxy situé dans la même zone, de sorte que l'application, le nœud de proxy et le nœud en lecture seule résident tous dans la même zone, minimisant ainsi la latence.
Chiffrement SSL
Appliquez le chiffrement SSL au point de terminaison du proxy de base de données pour garantir la sécurité de la transmission des données.
Architecture de déploiement du proxy
Le proxy de base de données ApsaraDB RDS for MySQL prend en charge le déploiement mono-zone et le déploiement bi-zone.
Déploiement mono-zone : Tous les nœuds de proxy résident dans la même zone.
Déploiement bi-zone : Les nœuds de proxy résident dans deux zones différentes, offrant une reprise après sinistre interzones sans coût supplémentaire.
Modes de déploiement
Le proxy de base de données propose trois modes de déploiement. Ces modes diffèrent par le nombre de zones, le nombre total de nœuds de proxy, l'uniformité des spécifications des nœuds de proxy et les types de proxy pris en charge.
Le mode de déploiement 3 place tous les nœuds de proxy dans une seule zone ; le proxy de base de données ne peut donc pas fournir de service en cas de panne au niveau de la zone. Les modes de déploiement 1 et 2 répartissent les nœuds de proxy sur deux zones et offrent une reprise après sinistre interzones.
Mode de déploiement 1
Zones : Deux zones
Nombre total de nœuds de proxy : 4
Limites de spécification des nœuds de proxy : Les nœuds de proxy situés dans la même zone doivent utiliser la même spécification.
Types de proxy pris en charge : Dedicated
Panne au niveau du nœud de proxy : Le nœud défaillant cesse de traiter le trafic, qui est transféré vers les autres nœuds de proxy sains de la même zone.
-
Panne au niveau de la zone : Le trafic de service est transféré vers les nœuds de proxy de la zone saine (reprise après sinistre interzones). Une fois les nœuds de proxy de la zone défaillante rétablis, le nouveau trafic de service est acheminé vers ces nœuds récupérés, tandis que le routage des connexions persistantes existantes reste inchangé jusqu'à l'expiration automatique des connexions.

Si vous activez la fonctionnalité d'accès au nœud le plus proche, disponible uniquement dans le mode de déploiement 1, celle-ci peut devenir indisponible en cas de panne au niveau de la zone, car la disponibilité globale du proxy de base de données est prioritaire sur la latence d'accès.
Mode de déploiement 2
Zones : Deux zones
Nombre total de nœuds de proxy : 2
Limites de spécification des nœuds de proxy : Les deux nœuds doivent utiliser la même spécification.
Types de proxy pris en charge : Dedicated et General-purpose
Étant donné que le proxy de base de données est déployé avec deux nœuds répartis sur deux zones, une panne au niveau d'un nœud de proxy équivaut à une panne au niveau de la zone.
-
En cas de panne, le trafic de service est transféré vers le nœud de proxy situé dans l'autre zone saine.

Mode de déploiement 3
Zones : Zone unique
Nombre total de nœuds de proxy : 2
Limites de spécification des nœuds de proxy : Les nœuds de proxy situés dans la même zone doivent utiliser la même spécification.
Types de proxy pris en charge : Dedicated et General-purpose
Panne au niveau du nœud de proxy : Le nœud défaillant cesse de traiter le trafic, et tout le trafic de service est pris en charge par l'autre nœud de proxy sain de la même zone.
-
Panne au niveau de la zone : Le proxy de base de données ne peut pas fournir de service. Attendez la récupération après panne dans le centre de données de la zone ou modifiez manuellement le proxy pour passer à un mode de déploiement interzones.

Après avoir activé le proxy de base de données, vous pouvez modifier l'architecture de déploiement du proxy. Pour plus d'informations, consultez la rubrique Modifier les configurations du proxy de base de données.
Mode de déploiement par défaut et zones de proxy
Maintenez l'alignement entre la zone du proxy de base de données, la zone du point de terminaison de proxy et la zone de l'instance RDS afin de réduire la latence réseau causée par l'accès interzones.
Après avoir sélectionné un plan de déploiement de zone et un type de proxy pour l'instance, le mode de déploiement du proxy par défaut et les zones de proxy par défaut sont les suivants :
| Plan de déploiement de zone de l'instance | Type de proxy | Mode de déploiement du proxy par défaut | Zones de proxy par défaut |
| Déploiement mono-zone | Dedicated | Mode de déploiement 3 | Par défaut, identique à la zone principale du nœud principal de l'instance RDS. |
| Déploiement mono-zone | General-purpose | Mode de déploiement 3 | Par défaut, identique à la zone principale du nœud principal de l'instance RDS. |
| Déploiement bi-zone | Dedicated | Mode de déploiement 1 | Zone 1 : Par défaut, identique à la zone du nœud principal de l'instance. Zone 2 : Par défaut, identique à la zone du nœud secondaire de l'instance. |
| Déploiement bi-zone | General-purpose | Mode de déploiement 2 | Zone 1 : Par défaut, identique à la zone du nœud principal de l'instance. Zone 2 : Par défaut, identique à la zone du nœud secondaire de l'instance. |
Types de proxy
Le proxy de base de données ApsaraDB RDS for MySQL propose deux types de proxy : General-purpose et Dedicated.
General-purpose : Les ressources CPU physiques sont partagées. Ce type est gratuit et plus économique.
Dedicated : Les ressources CPU physiques sont exclusivement réservées. Ce type utilise la méthode de facturation au paiement à l'utilisation et offre une meilleure stabilité des performances. Le tableau suivant décrit les différences entre les deux types de proxy et les fonctionnalités prises en charge par chacun :
| Élément | General-purpose | Dedicated |
| Méthode de facturation | Gratuit | Paiement à l'utilisation. Pour plus d'informations, consultez la rubrique Facturation. |
| Type de ressource | Ressources CPU physiques partagées | Ressources CPU physiques exclusivement réservées, offrant une meilleure stabilité des performances. |
| Plage de spécifications d'un seul nœud de proxy | 1 à 8 cœurs | 1 à 16 cœurs |
| Instances RDS MySQL prises en charge | Instances de la série haute disponibilité RDS MySQL et Cluster Edition | |
| Architecture de déploiement | Modes de déploiement 2 et 3 | Modes de déploiement 1, 2 et 3 |
| Accès au nœud le plus proche | Non pris en charge | Pris en charge |
| Fractionnement lecture/écriture | Pris en charge | |
| Fractionnement des transactions | Pris en charge | |
| Points de terminaison de proxy | Une seule instance RDS MySQL prend en charge 1 à 7 points de terminaison de proxy. Chaque point de terminaison de proxy prend en charge un point de terminaison interne et un point de terminaison public. | |
| Connexions persistantes lors des basculements | Pris en charge | Pris en charge |
| Connexions persistantes lors des pannes | Non pris en charge | Pris en charge |
| Pool de connexions | Pris en charge | |
| Chiffrement SSL | Pris en charge |
Dans le tableau précédent, une cellule vide dans la colonne Dedicated indique que la valeur est identique à celle de la colonne General-purpose.
La spécification du proxy et le nombre de proxys sont calculés comme suit :
-
Relation entre la spécification du proxy et la spécification d'un seul nœud de proxy :
Spécification du proxy = somme des spécifications de tous les nœuds de proxy.Par exemple, un proxy Dedicated est déployé sur deux zones (Zone A + Zone B). La spécification CPU d'un seul nœud de proxy dans la Zone A est de 1 cœur et le nombre de nœuds est de 2. La spécification CPU d'un seul nœud de proxy dans la Zone B est de 2 cœurs et le nombre de nœuds est de 2. Alors,
spécification du proxy = spécification du proxy de la Zone A + spécification du proxy de la Zone B = 1 cœur x 2 + 2 cœurs x 2 = 2 cœurs + 4 cœurs = 6 cœurs. -
Relation entre le nombre de proxys et la spécification du proxy :
Nombre de proxys = spécification du proxy / spécification unitaire du proxy. La spécification unitaire du proxy est fixée à 2 cœurs CPU.Par exemple, si la spécification du proxy d'une instance de proxy est de 6 cœurs,
nombre de proxys = 6 cœurs / 2 cœurs = 3.
Notes d'utilisation
Pour plus d'informations, consultez la rubrique Notes d'utilisation de la fonctionnalité de proxy de base de données.
Facturation
Pour plus d'informations, consultez la rubrique Facturation des proxys de base de données.
Utilisation
Pour plus d'informations, consultez la rubrique Utiliser le proxy de base de données.