Examiner Azure App Service

Effectué

Azure App Service est un service basé sur HTTP pour l’hébergement d’applications web, d’API REST et de back-ends mobiles. Vous pouvez développer dans votre framework ou langage de programmation préféré. Les applications s’exécutent et sont mises à l’échelle facilement dans les environnements Windows et Linux.

Prise en charge automatique de la mise à l’échelle

La possibilité d’effectuer un scale-up/down ou d’effectuer un scale out/in est intégrée dans Azure App Service. Selon l’utilisation de l’application web, vous pouvez effectuer un scale-up ou un scale-down des ressources de la machine sous-jacente qui héberge votre application web. Les ressources incluent le nombre de cœurs ou la quantité de RAM disponible. Le scale-out/in est la capacité d’augmenter ou de diminuer le nombre d’instances de machine qui exécutent votre application web.

Support pour les conteneurs

Avec Azure App Service, vous pouvez déployer et exécuter des applications Web conteneurisées sur Windows et Linux. Vous pouvez extraire des images conteneur à partir d’un Azure Container Registry privé ou d’un Docker Hub. Azure App Service prend également en charge les applications multi-conteneurs, les conteneurs Windows et Docker Compose pour orchestrer des instances de conteneur.

Prise en charge de l’intégration et du déploiement continus

Le portail Azure offre une intégration et un déploiement continus immédiats avec Azure DevOps Services, GitHub, Bitbucket, FTP ou un dépôt Git local sur votre machine de développement. Connectez votre application web aux sources ci-dessus et App Service fera le reste pour vous en synchronisant automatiquement le code et toutes les modifications futures apportées au code dans l’application web. L’intégration et le déploiement continus pour les applications Web conteneurisées sont également pris en charge à l’aide d’Azure Container Registry ou de Docker Hub.

Emplacements de déploiement

Lors du déploiement d'une application Web, vous pouvez utiliser un emplacement de déploiement distinct au lieu de l'emplacement de production par défaut lorsque vous exécutez le niveau de plan App Service Standard ou supérieur. Les emplacements de déploiement sont des applications en direct avec leurs propres noms d’hôte. Les éléments de contenu et de configuration des applications peuvent être échangés entre deux emplacements de déploiement, y compris l’emplacement de production.

App Service sur Linux

App Service sur Linux peut aussi héberger des applications web en mode natif sur Linux pour les piles d’applications prises en charge. En outre, il peut exécuter des conteneurs Linux personnalisés (aussi appelés Web App for Containers). App Service sur Linux prend en charge de nombreuses images intégrées spécifiques à chaque langage. Déployez simplement votre code. Les frameworks et les langages pris en charge sont les suivants : Node.js, Java (JRE 8 et JRE 11), PHP, Python, .NET et Ruby. Si le runtime requis par votre application n’est pas pris en charge dans les images intégrées, vous pouvez la déployer avec un conteneur personnalisé.

Les langages ainsi que les versions prises en charge sont mis à jour régulièrement. Vous pouvez récupérer la liste actuelle à l’aide de la commande suivante dans Cloud Shell.

az webapp list-runtimes --os-type linux

Limites

App Service sur Linux présente certaines limitations :

  • App Service sur Linux n’est pas pris en charge au niveau de tarification Partagé.
  • Le portail Azure affiche uniquement les fonctionnalités actuellement compatibles avec les applications Linux. À mesure que des fonctionnalités sont compatibles, elles sont activées sur le portail.
  • En cas de déploiement sur des images intégrées, votre code et votre contenu sont alloués à un volume de stockage pour le contenu web et sauvegardé par le Stockage Azure. La latence du disque de ce volume est supérieure et plus variable que la latence du système de fichiers du conteneur. Les applications qui nécessitent un accès en lecture seule à des fichiers de contenu peuvent tirer parti de l’option de conteneur personnalisée, qui place les fichiers dans le système de fichiers conteneur au lieu du volume de contenu.