Identifier les scénarios adaptés à la mise à l’échelle automatique
La mise à l’échelle automatique peut être déclenchée selon une planification ou à la suite d’une évaluation dynamique qui détermine si le système manque de ressources. Par exemple, la mise à l’échelle automatique peut être déclenchée si l’utilisation du processeur augmente, si l’occupation de la mémoire s’accroît, si le nombre de demandes entrantes vers un service augmente soudainement ou si une combinaison de facteurs se produit.
Dans le système de réservation d’hôtel, la mise à l’échelle automatique est utile pour gérer les pics à court terme du nombre de demandes de réservation. Vous pouvez également utiliser la mise à l’échelle automatique planifiée pour fournir des ressources supplémentaires aux périodes de pointe prévisibles.
Qu’est-ce que la mise à l’échelle automatique ?
La mise à l’échelle automatique est un processus ou système cloud qui ajuste les ressources disponibles en fonction de la demande actuelle. La mise à l’échelle automatique effectue un scale-in et un scale-out, plutôt qu’un scale-up et un scale-down.
Mise à l’échelle automatique dans Azure App Service
La mise à l’échelle automatique dans Azure App Service supervise les métriques des ressources d’une application web en cours d’exécution. App Service détecte quand des ressources supplémentaires sont nécessaires pour gérer une charge de travail accrue et garantit que ces ressources sont disponibles avant que le système ne soit surchargé.
La mise à l’échelle automatique réagit aux changements de l’environnement en ajoutant ou en supprimant des serveurs web et en équilibrant la charge entre eux. La mise à l’échelle automatique n’affecte pas la puissance du processeur, la mémoire ou la capacité de stockage des serveurs web sur lesquels repose l’application web ; elle change uniquement le nombre de serveurs web.
Règles de mise à l’échelle automatique
La mise à l’échelle automatique prend ses décisions en fonction de règles définies par vos soins. Une règle spécifie le seuil d’une métrique et déclenche un événement de mise à l’échelle automatique quand ce seuil est atteint. La mise à l’échelle automatique peut également libérer des ressources quand la charge de travail diminue.
Définissez avec soin vos règles de mise à l’échelle automatique. Par exemple, une attaque par déni de service (DoS) est susceptible de provoquer un afflux de trafic entrant à grande échelle. Une tentative de gérer une forte hausse de demandes provoquée par une attaque DoS serait vaine et coûteuse. Ces requêtes n’étant pas authentiques, elles doivent être abandonnées plutôt que traitées. Une meilleure solution consiste à implémenter une détection et un filtrage des demandes qui se produisent pendant une telle attaque avant qu’elles n’atteignent votre service.
Quand devez-vous envisager d’utiliser la mise à l’échelle automatique ?
La mise à l’échelle automatique procure de l’élasticité à vos services web. Il s’agit d’une solution appropriée lorsque vous hébergez une application pour laquelle vous ne pouvez pas facilement prévoir la charge de travail ou dont la charge de travail est susceptible de varier considérablement en fonction de la date ou de l’heure de la journée. Par exemple, vous pouvez vous attendre à une augmentation ou à une diminution de l’activité pour une application métier pendant les jours fériés.
La mise à l’échelle automatique améliore la disponibilité et la tolérance de panne. Elle permet de garantir que les requêtes des clients à destination d’un service web ne sont pas refusées du fait qu’une instance n’est pas en mesure de la reconnaître en temps voulu ou qu’une instance surchargée a planté.
La mise à l’échelle automatique repose sur l’ajout ou la suppression de serveurs web. Si vos applications web exécutent un traitement nécessitant beaucoup de ressources dans le cadre de chaque requête, la mise à l’échelle automatique n’est peut-être pas une approche efficace. Dans ce type de situation, un scale-up manuel peut être nécessaire. Par exemple, si une demande envoyée à une application web implique d’effectuer un traitement complexe sur un grand jeu de données, cette demande unique peut épuiser la capacité de traitement et de mémoire de l’instance, selon la taille de celle-ci.
La mise à l’échelle automatique n’est pas la meilleure approche pour gérer la croissance à long terme. Vous pouvez avoir une application web qui commence avec quelques utilisateurs, mais qui gagne en popularité au fil du temps. La mise à l’échelle automatique a une surcharge liée à la supervision des ressources et à la détermination de l’opportunité de déclencher un événement de mise à l’échelle. Dans ce scénario, si vous pouvez anticiper le taux de croissance, la mise à l’échelle manuelle du système au fil du temps peut être plus rentable.
Le nombre d’instances d’un service web est également un facteur dans le choix ou non de la mise à l’échelle automatique. Vous pouvez prévoir de n’exécuter que quelques instances d’un service la plupart du temps. Toutefois, dans ce cas, votre service est toujours vulnérable aux temps d’arrêt ou défauts de disponibilité, que la mise à l’échelle automatique soit activée ou non. Moins il y a d’instances au départ, moins vous avez de capacité à gérer une charge de travail accrue quand la mise à l’échelle automatique lance plus d’instances.