Examen de Azure App Service
Azure App Service es un servicio basado en HTTP para hospedar aplicaciones web, API de REST y back-ends para dispositivos móviles. Puede desarrollar en su lenguaje o marco de programación favorito. Las aplicaciones se ejecutan y escalan fácilmente en los entornos Windows y Linux.
Compatibilidad integrada con el escalado automático
La capacidad de escalar hacia arriba/abajo o de escalar hacia adentro está incorporada en Azure App Service. En función del uso de la aplicación web, puede escalar o reducir verticalmente los recursos de la máquina subyacente en la que se hospeda la aplicación web. Los recursos incluyen el número de núcleos o la cantidad de memoria RAM disponible. El escalado o la reducción horizontal es la capacidad de aumentar o disminuir el número de instancias de máquina que ejecutan la aplicación web.
Compatibilidad con los contenedores
Con Azure App Service, puede implementar y ejecutar aplicaciones web en contenedores en Windows y Linux. Puede extraer imágenes de contenedor de una instancia privada de Azure Container Registry o Docker Hub. Azure App Service también admite aplicaciones de varios contenedores, contenedores de Windows y Docker Compose para orquestar instancias de contenedor.
Compatibilidad con la integración e implementación continuas
Azure Portal proporciona integración e implementación continuas integradas con Azure DevOps Services, GitHub, Bitbucket, FTP o un repositorio de Git local en la máquina de desarrollo. Conecte su aplicación web con cualquiera de los orígenes anteriores y App Service se encargará del resto mediante la sincronización automática del código y los futuros cambios en el código en la aplicación web. También se admite la integración e implementación continuas para aplicaciones web en contenedores mediante Azure Container Registry o Docker Hub.
Ranuras de implementación
Al implementar una aplicación web, puede usar una ranura de implementación distinta en lugar del espacio de producción predeterminado si su nivel de servicio del plan de App Service es estándar o mejor. Las ranuras de implementación son aplicaciones activas con sus propios nombres de host. Los elementos de contenido y configuraciones de aplicaciones se pueden intercambiar entre dos ranuras de implementación, incluida la ranura de producción.
App Service en Linux
App Service también puede hospedar las aplicaciones Web de forma nativa en Linux para las pilas de aplicaciones admitidas. Además, puede ejecutar contenedores de Linux personalizados (también conocidos como Web App for Containers). App Service en Linux admite muchas imágenes integradas específicas del lenguaje. Solo implemente el código. Entre los lenguajes y marcos admitidos se incluyen: Node.js, Java (JRE 8 y JRE 11), PHP, Python, .NET y Ruby. Si el tiempo de ejecución que requiere la aplicación no se admite en las imágenes integradas, puede implementarlo con un contenedor personalizado.
Los lenguajes y sus versiones admitidas se actualizan de forma periódica. Puede recuperar la lista actual mediante el comando siguiente en Cloud Shell.
az webapp list-runtimes --os-type linux
Limitaciones
App Service en Linux tiene algunas limitaciones:
- App Service en Linux no se admite en el plan de tarifa Compartido.
- Azure Portal solo muestra las características que funcionan actualmente para las aplicaciones Linux. A medida que se habiliten las características, se activarán en el portal.
- Cuando se implementen en imágenes integradas, el código y el contenido se asignarán a un volumen de almacenamiento para el contenido web, respaldado por Azure Storage. La latencia de disco de este volumen es mayor y más variable que la del sistema de archivos del contenedor. Las aplicaciones que requieran muchos accesos de solo lectura a archivos de contenido pueden beneficiarse de la implementación de contenedores personalizados, que permite colocar los archivos en el sistema de archivos de contenedor en lugar de en el volumen de contenido.