PolarDB PolarProxy est un service de proxy réseau hautement disponible et performant qui s'intercale entre votre base de données et vos applications. Facile à gérer, il transfère toutes les requêtes des applications vers la base de données. PolarProxy prend en charge des fonctionnalités avancées telles que la répartition lecture/écriture automatique, l'équilibrage de charge, plusieurs niveaux de cohérence, les pools de connexions et la protection contre les surcharges. Utilisez les fonctionnalités du proxy de base de données en vous connectant à un endpoint de cluster PolarDB.
Présentation de PolarDB PolarProxy

Un cluster PolarDB Cluster Edition se compose de plusieurs nœuds, dont un nœud principal et plusieurs nœuds en lecture seule. Par défaut, le cluster fournit deux endpoints : un primary endpoint et un cluster endpoint. Le cluster endpoint est fourni par PolarDB PolarProxy et prend en charge deux modes : lecture/écriture (répartition lecture/écriture automatique) et lecture seule.
Prise en charge de deux versions du proxy de base de données
PolarProxy Enterprise Edition est disponible en deux versions : Standard Enterprise Edition et Dedicated Enterprise Edition.
Standard Enterprise Edition : cette version est destinée aux clusters General-purpose et partage les ressources CPU physiques. Les ressources CPU du proxy de base de données sont indépendantes de celles du cluster. Par défaut, le proxy reçoit des ressources CPU équivalentes à 1/6 du nombre total de cœurs CPU des nœuds de base de données du cluster.
Dedicated Enterprise Edition : cette version est destinée aux clusters Dedicated et utilise des ressources CPU physiques dédiées pour offrir une meilleure stabilité des performances. Les ressources CPU du proxy de base de données sont indépendantes de celles du cluster. Par défaut, le proxy reçoit des ressources CPU équivalentes à 1/4 du nombre total de cœurs CPU des nœuds de base de données du cluster.
Le tableau suivant compare les deux versions.
Élément | Standard Enterprise Edition | Dedicated Enterprise Edition |
Type de facturation | Gratuit | |
Type de ressource | Partage les ressources CPU physiques. Fournit une mise à l'échelle élastique intelligente à la seconde près en fonction de la charge de service. | Utilise des ressources physiques dédiées pour une meilleure stabilité des performances. |
Architecture de déploiement | Architecture redondante haute disponibilité (HA) | |
Type d'instance | Configuration minimale : 2 cœurs | |
Connexions | Illimité | |
IOPS | Le nombre maximal d'IOPS du stockage du cluster est augmenté jusqu'à 50 % par rapport aux versions précédentes. Pour plus d'informations sur le nombre maximal d'IOPS selon les différentes spécifications de cluster, consultez Spécifications des nœuds de calcul Enterprise Edition. | |
Configuration des nœuds en lecture seule | Les configurations des nœuds en lecture seule ne doivent pas nécessairement être identiques à celles du nœud principal. Réduisez la configuration des nœuds en lecture seule en fonction de votre charge de service afin de réduire les coûts. | |
Nombre de nœuds en lecture seule | De 1 à 15 nœuds en lecture seule | |
Endpoint | 1 primary endpoint et 7 cluster endpoints | |
Basculement avec standby actif | Les connexions et les transactions ne sont pas interrompues. Un bref blocage de 5 à 10 secondes se produit. | |
Cohérence |
| |
Pool de connexions | Prise en charge | |
Fractionnement des transactions | Prise en charge | |
Protection contre les interruptions (connexions persistantes) | Prise en charge | |
Masquage des données (sécurité) | Prise en charge | |
Mise à niveau/rétrogradation sans interruption | Prise en charge | |
Cluster multi-master (base de données/table) | Prise en charge | |
Mise à l'échelle élastique à la seconde près pour les nœuds de calcul | Prise en charge | Les ressources dédiées ne nécessitent pas cette fonctionnalité. |
Protection par limitation du débit du proxy (prochainement) | Prise en charge | |
Facturation
PolarProxy Enterprise Edition est gratuit.
Les politiques de basculement pour PolarProxy Enterprise Edition sont les suivantes :
Série | Type d'achat | Politique de basculement |
Cluster Edition | Nouveaux clusters | Après le 9 décembre 2021, seul PolarProxy Enterprise Edition est disponible pour les nouveaux clusters. |
Clusters existants en paiement à l'utilisation | Pour les clusters existants en paiement à l'utilisation, le proxy de base de données a été automatiquement basculé vers PolarProxy Enterprise Edition le 9 décembre 2021. | |
Clusters existants par abonnement | Pour les clusters existants par abonnement, le proxy de base de données a été automatiquement basculé vers PolarProxy Enterprise Edition le 9 décembre 2021. |
Limites
Les cluster endpoints et leurs fonctionnalités de proxy de base de données associées sont pris en charge uniquement par PolarDB Cluster Edition.
Remarques
Le cluster endpoint par défaut et les cluster endpoints personnalisés ne prennent pas en charge le protocole de compression.
Si vous utilisez un cluster endpoint sans activer le fractionnement des transactions, toutes les requêtes au sein d'une transaction sont routées vers le nœud principal.
Lorsque vous exécutez la commande
SHOW PROCESSLIST, le système fusionne et renvoie les résultats de tous les nœuds.Si vous exécutez plusieurs instructions ou appelez une procédure stockée, les requêtes suivantes sur la connexion actuelle sont routées vers le nœud principal. Pour rétablir la répartition lecture/écriture, déconnectez-vous puis reconnectez-vous.
Le nombre maximal de connexions pour un cluster endpoint PolarDB n'est pas limité par l'endpoint lui-même, mais par les spécifications des nœuds de calcul backend. Pour un cluster endpoint en lecture/écriture, chaque connexion d'application établit une connexion à chaque nœud de calcul de la base de données backend. Par conséquent, le nombre maximal de connexions d'application est limité par le nombre maximal de connexions prises en charge par un seul nœud de calcul. Pour un cluster endpoint en lecture seule, chaque connexion d'application établit une connexion à un seul nœud de calcul de la base de données backend. Par conséquent, le nombre maximal de connexions d'application correspond à la somme des connexions maximales prises en charge par tous les nœuds en lecture seule associés à cet endpoint. Pour les cluster endpoints en lecture/écriture, utilisez la fonctionnalité de mise en pool des connexions au niveau des transactions pour augmenter le nombre maximal de connexions disponibles pour votre application.
Après avoir ajouté ou redémarré un nœud en lecture seule, les nouvelles connexions de répartition lecture/écriture peuvent transférer les requêtes vers ce nœud. Cependant, les connexions existantes ne le peuvent pas. Pour router les requêtes des connexions existantes vers le nouveau nœud ou le nœud redémarré, déconnectez-vous puis reconnectez-vous. Par exemple, redémarrez votre application.
Ne modifiez pas les variables d'environnement, comme dans
set names utf8mb4;select * from t1;, lors de l'exécution de plusieurs instructions ou de l'appel de procédures stockées. Sinon, les données lues à partir des nœuds en lecture seule et du nœud principal peuvent être incohérentes.-
Lorsque vous utilisez un pool de connexions d'application pour établir une connexion URL, ajoutez les paramètres
connectTimeoutetsocketTimeoutà l'URL. Cela permet d'éviter que le pool de connexions de l'application ne se bloque si des paquets sont perdus en raison de problèmes réseau ou d'autres événements imprévus. Pour plus d'informations sur les paramètres, consultez Paramètres. Exemple :URL Java : jdbc:mysql://ip:port/db?connectTimeout=60000&socketTimeout=300000
Mettre à niveau les spécifications du proxy de base de données
Les spécifications par défaut de PolarProxy Enterprise Edition sont suffisantes pour la plupart des scénarios d'application. Si vous effectuez des tests de charge ou si le débit de votre service est élevé, la dernière version du proxy de base de données met automatiquement à l'échelle ses spécifications en temps réel en fonction de la charge du proxy. Cette mise à l'échelle empêche le proxy de base de données de devenir un goulot d'étranglement des performances. Pour les anciennes versions du proxy de base de données, vous pouvez également mettre à niveau manuellement les spécifications.
Le proxy de base de données ne consomme pas les ressources de cœur CPU du cluster. Par conséquent, la mise à niveau de ses spécifications ne réduit pas le nombre de cœurs CPU disponibles dans le cluster.
PolarProxy Enterprise Edition est gratuit. Aucun frais n'est facturé pour les augmentations de quota.
Pour plus d'informations, consultez Mettre à niveau les spécifications du proxy de base de données.
Opérations API associées
|
API |
Description |
|
Crée un endpoint public pour un cluster PolarDB. |
|
|
Crée un cluster endpoint personnalisé pour un cluster PolarDB. |
|
|
Interroge les informations sur les endpoints d'un cluster PolarDB. |
|
|
Modifie les attributs d'un cluster endpoint PolarDB. |
|
|
Modifie un endpoint (tel qu'un cluster endpoint personnalisé) d'un cluster PolarDB. |
|
|
Libère un cluster endpoint PolarDB (à l'exception de l'endpoint privé d'un cluster endpoint personnalisé). |
|
|
Libère un cluster endpoint personnalisé d'un cluster PolarDB. |