Examiner les options de montée en charge
Azure App Service prend en charge deux options pour effectuer automatiquement une montée en charge de vos applications web :
- Mise à l’échelle automatique avec la mise à l’échelle automatique Azure. La mise à l’échelle automatique prend des décisions de mise à l'échelle en fonction de règles que vous définissez.
- Mise à l’échelle automatique d’Azure App Service. La mise à l’échelle automatique prend des décisions de mise à l’échelle en fonction des paramètres que vous sélectionnez.
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.
La mise à l’échelle automatique peut être déclenchée selon une planification ou si le système vient à manquer 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.
Mise à l’échelle automatique dans Azure App Service
La mise à l’échelle automatique dans Azure App Service supervise les métriques de ressources d’une application web en cours d’exécution. Elle détecte les situations où d’autres ressources sont nécessaires pour gérer une charge de travail accrue et garantit que ces ressources sont disponibles avant que le système 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 ces derniers. La mise à l’échelle automatique n’a aucun effet sur la puissance du processeur, la mémoire ou la capacité de stockage des serveurs web sur lesquels repose l’application ; 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 a diminué.
Définissez avec soin vos règles de mise à l’échelle automatique. Par exemple, une attaque par déni de service est susceptible de provoquer un afflux à grande échelle de trafic entrant. Une tentative de gérer une forte hausse de demandes provoquée par une attaque DoS serait vaine et coûteuse. Ces demandes n’étant pas authentiques, elles doivent être ignoré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. Par exemple, vous pourriez vous attendre à une augmentation ou réduction 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 qu’une demande cliente à destination d’un service n’est pas refusée 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 gourmand en ressources dans le cadre de chaque demande, 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 une approche plus efficace.
Le nombre d’instances d’un service est également un facteur. 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 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.
Mise à l’échelle automatique d’Azure App Service
La mise à l’échelle automatique est une nouvelle option de montée en charge qui gère automatiquement les décisions de mise à l’échelle pour vos applications web et vos plans App Service. Elle est différente de la mise à l’échelle automatique Azure préexistante qui vous permet de définir des règles de mise à l’échelle en fonction des planifications et des ressources. Grâce à la mise à l’échelle automatique, vous pouvez ajuster les paramètres de mise à l’échelle pour améliorer le niveau de performance de votre application et éviter les problèmes de démarrage à froid. La plateforme préchauffe des instances pour agir en tant que tampon lors d’une montée en puissance et assurer ainsi des transitions de performances fluides. Vous êtes facturé par seconde pour chaque instance, y compris les instances préchauffées.
Voici quelques scénarios dans lesquels vous devez effectuer une montée en charge automatiquement :
- Vous ne souhaitez pas configurer des règles de mise à l’échelle auto basées sur les métriques de ressources.
- Vous souhaitez que vos applications web du même plan App Service soient mises à l’échelle différemment et indépendamment les unes des autres.
- Votre application web est connectée à une base de données ou à un système hérité, ce qui peut ne pas être mis à l’échelle aussi rapidement que l’application web. La mise à l’échelle automatique vous permet de définir le nombre maximal d’instances que votre plan App Service peut mettre à l’échelle. Ce paramètre permet à l’application web de ne pas surcharger le back-end.