Les instances ApsaraDB RDS for SQL Server exécutant l'édition Cluster utilisent une architecture primaire/secondaire pour assurer la haute disponibilité. Cette fonctionnalité réduit les coûts en déchargeant les requêtes de lecture, ce qui élimine le besoin de provisionner une instance dédiée en lecture seule.
Fonctionnement
Pour rendre l'instance secondaire accessible en lecture sur une instance SQL Server de l'édition Cluster, activez un endpoint dédié en lecture seule pour l'instance secondaire ou la répartition lecture/écriture (endpoint unifié en lecture seule). Les capacités de lecture et d'écriture des instances primaire et secondaire varient selon l'option choisie :
Si ni l'endpoint dédié en lecture seule ni la répartition lecture/écriture ne sont activés : seule l'instance primaire est accessible en lecture et en écriture. L'instance secondaire n'est ni accessible en lecture ni en écriture.
Si un endpoint dédié en lecture seule pour l'instance secondaire est activé : l'instance primaire est accessible en lecture et en écriture, tandis que l'instance secondaire est en lecture seule. Cet endpoint achemine les connexions uniquement vers l'instance secondaire, et non vers l'instance primaire ou toute autre instance en lecture seule.
Si la répartition lecture/écriture (endpoint unifié en lecture seule) est activée : l'instance primaire est accessible en lecture et en écriture, et l'instance secondaire est en lecture seule. L'instance primaire, l'instance secondaire et toutes les instances en lecture seule peuvent participer à la répartition du poids de lecture.
Prérequis
L'instance primaire doit répondre aux exigences suivantes. Consultez ces informations sur la page Basic Information de l'instance.
Version de l'instance : 2017 Enterprise Cluster Edition, 2019 Enterprise Cluster Edition, 2022 Enterprise Cluster Edition ou 2025 Enterprise Cluster Edition
Série d'instances : Cluster Edition
Type de stockage : ESSD
Mode de facturation : abonnement ou paiement à l'utilisation. Les instances serverless ne sont pas prises en charge.
Méthode 1 : Configurer la répartition lecture/écriture
Connectez-vous à la console ApsaraDB RDS et accédez à la page Instances. Dans la barre de navigation supérieure, sélectionnez la région où se trouve l'instance RDS. Localisez ensuite l'instance RDS et cliquez sur son ID.
Dans le volet de navigation de gauche, cliquez sur Cluster Management.
-
Si la répartition lecture/écriture n'est pas activée, cliquez sur Enable Read-only Endpoint. Dans la boîte de dialogue qui s'affiche, définissez les paramètres Endpoint Type et Weight Distribution.
Si la répartition lecture/écriture est déjà activée, cliquez sur Configure Readonly Splitting Address . Dans la boîte de dialogue qui s'affiche, définissez le paramètre Weight Distribution.
La valeur du poids doit être un multiple entier de 100. Par exemple, pour rendre l'instance secondaire accessible en lecture, attribuez-lui un poids supérieur à 0 (par exemple, 800) et définissez le poids de l'instance primaire à 0 afin de décharger toutes les requêtes de lecture de celle-ci.
Plus le poids de lecture d'une instance est élevé, plus elle traite de requêtes de lecture. Par exemple, si trois instances du pool de lecture ont des poids de 100, 200 et 200, elles traitent les requêtes de lecture selon un ratio de 1:2:2.
Automatic Distribution : le système alloue automatiquement le poids de lecture de chaque instance en fonction de ses spécifications. Les nouvelles instances en lecture seule ajoutées ultérieurement à l'instance primaire sont également intégrées automatiquement au lien de répartition lecture/écriture sur la base des poids attribués par le système. Aucune configuration manuelle n'est requise.
Customized Distribution : définissez manuellement le poids de lecture de chaque instance. La valeur doit être un nombre entier compris entre 0 et 10 000. Les nouvelles instances en lecture seule reçoivent un poids par défaut de 0 et nécessitent une configuration manuelle.
RemarqueLorsque vous supprimez une instance en lecture seule, le système retire automatiquement son poids. Les poids des instances restantes ne changent pas.
Cliquez sur OK.
Méthode 2 : Activer un endpoint dédié en lecture seule
L'endpoint dédié en lecture seule fournit un accès en lecture exclusivement à l'instance secondaire. Vous ne pouvez pas utiliser cet endpoint pour accéder à l'instance primaire ou à d'autres instances en lecture seule.
Accédez à la page RDS Instances, sélectionnez une région dans la barre de navigation supérieure, puis cliquez sur l'ID de l'instance cible.
Dans le volet de navigation de gauche, cliquez sur Cluster Management.
Dans la section Secondary Instance Network Information, cliquez sur Enable Secondary Instance Endpoint, puis définissez le paramètre Endpoint Type.
Cliquez sur OK.
Référence API
Appelez l'opération AllocateReadWriteSplittingConnection pour allouer un endpoint en lecture seule.