Hospedaje de aplicaciones en Azure

Azure proporciona una variedad de maneras diferentes de hospedar la aplicación en función de sus necesidades. En este artículo se sugieren servicios para que coincidan con los requisitos. No es proscriptivo. Puede combinar y hacer coincidir los servicios para satisfacer sus necesidades. La mayoría de los entornos de producción usan una combinación de servicios para satisfacer sus necesidades empresariales y organizativas.

Simplicidad y control

Los servicios de hospedaje de Azure se proporcionan con dos consideraciones:

  • Simplicidad frente a control
    • Las plataformas de hospedaje simples requieren menos configuración y administración, pero proporcionan menos control sobre la infraestructura subyacente.
    • Las plataformas de hospedaje más complejas requieren más configuración y administración, pero proporcionan más control sobre la infraestructura subyacente.
  • Nativo de la nube frente a nativo de Azure
    • La nube nativa se puede considerar como portátil en la nube mediante cargas de trabajo de código abierto, como contenedores y tecnologías de código abierto, como Dapr. Las aplicaciones que compile se pueden implementar en cualquier proveedor de nube.
    • El nativo de Azure es específico de Azure con una inversión en tecnologías y herramientas específicas de Azure para administrar esa infraestructura. Aunque estos servicios incluyen cargas de trabajo de contenedor, también incluyen herramientas de infraestructura, poco código y código primero específicas de Azure con énfasis en la conexión e integración entre los servicios de Azure.

Hospedaje simplificado

Azure administra completamente las soluciones de hospedaje simplificadas . Es responsable de la funcionalidad, como el código y la configuración del entorno. Azure administra el entorno de ejecución y la infraestructura subyacentes, incluidas las actualizaciones y las revisiones. El hospedaje simplificado es el enfoque nativo de Azure.

  • Logic Apps: cree y ejecute flujos de trabajo automatizados con poco o ningún código.
  • Power Automate: use cuando necesite automatizar los procesos empresariales y los flujos de trabajo.
  • Azure Static Web Apps: implemente aplicaciones web estáticas generadas como Blazor y React.
  • Aplicaciones de Azure Functions: código sin servidor o hospedaje de contenedores.

Hospedaje equilibrado

Las soluciones de hospedaje equilibradas equilibran la necesidad de simplicidad con la necesidad de control. Es responsable de la funcionalidad, como el código y la configuración del entorno. Azure administra el entorno de ejecución y la infraestructura subyacentes, incluidas las actualizaciones y las revisiones. También puede traer su propio contenedor al servicio. El hospedaje equilibrado es nativo de Azure y nativo de la nube.

  • App de Azure Servicio: hospedaje web de servicio completo, incluidos los entornos de ejecución de lenguaje, los contenedores y las cargas de trabajo de automatización.
  • Azure Container Apps: hospedaje de contenedores sin servidor.
  • Azure Spring Apps: migre aplicaciones de Spring Boot a la nube de Azure.

Hospedaje controlado

Las soluciones de hospedaje controladas proporcionan control total sobre la infraestructura subyacente. Es responsable de las actualizaciones y revisiones, así como del código, los recursos y la configuración del entorno. El hospedaje controlado es el enfoque nativo de la nube.

Hospedaje de código fuente

Para los desarrolladores nuevos en Azure que quieran iniciar el nuevo desarrollo, use el siguiente gráfico para encontrar la solución de hospedaje sugerida.

Diagram showing no code, low code in the first box, code in the second box and container in the third box with recommended services for each box.

Sin código ni código bajo

Soporte técnico de Azure soluciones sin código forman parte de su enfoque de Azure-Cloud.

  • Logic Apps: use un diseñador visual con operaciones precompiladas para desarrollar un flujo de trabajo para los escenarios empresariales y empresariales a negocio.
  • Power Automate, como Power Apps: use cuando necesite automatizar los procesos empresariales y los flujos de trabajo dentro de la organización de Microsoft 365.

Código frente al contenedor

Las soluciones de hospedaje con poco código están diseñadas para permitirle incorporar la funcionalidad del código sin tener que administrar la infraestructura de la aplicación.

  • Azure Static Web Apps: implemente aplicaciones web estáticas generadas.
  • Azure Functions: implemente funciones de código en lenguajes admitidos sin tener que administrar la infraestructura de la aplicación.

Las soluciones de hospedaje de código primero están diseñadas para hospedar código. Puede implementar el código directamente en la solución de hospedaje.

Las soluciones de hospedaje en primer lugar del contenedor están diseñadas para hospedar contenedores. El servicio proporciona características y opciones de configuración específicas del contenedor. Es responsable del proceso usado dentro del contenedor. Los servicios que hospedan contenedores pasan del control administrado a la responsabilidad total, por lo que solo se toma la cantidad de administración de contenedores que desee.

El hospedaje de orquestación centrado en Kubernetes incluye:

Service Foco Usar
Azure Kubernetes Service Nativo de la nube Use para clústeres de Kubernetes con un enfoque declarativo mediante archivos de configuración y artefactos externos.
Azure Service Fabric Nativo de Azure Use un enfoque imperativo para implementar microservicios en clústeres de máquinas. Proporciona un modelo de programación que permite a los desarrolladores escribir código que describe el estado deseado del sistema y el tiempo de ejecución de Service Fabric se encarga de hacer que el sistema coincida con ese estado.

El hospedaje de contenedores preconfigurado significa que las opciones de orquestación están preconfiguradas automáticamente. La capacidad de comunicarse entre contenedores o clústeres de contenedores podría requerir un servicio adicional, como Dapr.

Service Usar
Azure App Service hospedaje web de servicio completo
Azure Spring Apps Aplicaciones de Spring Boot
Azure Container Apps hospedaje de contenedores sin servidor
Azure Container Instances hospedaje simple y único de contenedores

Azure proporciona un registro de contenedor para almacenar y administrar las imágenes de contenedor o puede usar un registro de contenedor de terceros.

Service Usar
Azure Container Registry Use al compilar y hospedar sus propias imágenes de contenedor, que se pueden desencadenar con confirmaciones de código fuente y actualizaciones de imágenes base.

Sin servidor

Las soluciones de hospedaje sin servidor están diseñadas para ejecutar código sin estado, que incluye un plan de tarifa basado en el consumo que se escala a cero cuando no se usa.

Service Usar
Azure Container Apps Hospedaje de contenedores.
Funciones de Azure Hospedaje de código o contenedor.

Microservicios

Las soluciones de hospedaje de microservicios están diseñadas para ejecutar servicios pequeños e independientes que funcionan juntos para crear una aplicación más grande. Normalmente, los microservicios se implementan como contenedores.

Service Usar
Azure Container Apps Se usa para microservicios en contenedores sin servidor.
Funciones de Azure Use para microservicios en contenedores o código sin servidor.

Perímetro de la nube

Cloud Edge es un término para indicar si el servicio en la nube se encuentra para beneficiar al usuario (cliente) o a la aplicación (servidor).

Proceso de cliente

El proceso de cliente es el proceso que se ejecuta en el cliente lejos de la nube de Azure. El proceso de cliente se usa normalmente para la representación del lado cliente y el procesamiento del lado cliente, como aplicaciones móviles o basadas en explorador.

Service Usar
Azure Static Web Apps Se usa para aplicaciones web estáticas que usan la representación del lado cliente, como React, Angular, Svelte, Vue y Blazor.

Disponibilidad del cliente

Service Usar
Azure Front Door Use para todas las aplicaciones accesibles desde Internet para proporcionar una red global en caché y segura a los recursos estáticos y dinámicos, incluida la protección contra DDoS, el cifrado TLS de un extremo a otro, los firewalls de aplicaciones y el filtrado geográfico.

Proceso del servidor

Los recursos de proceso del servidor son archivos procesados por el servidor antes de ser servidos al cliente. Los recursos dinámicos se desarrollan mediante el proceso del servidor back-end, que se integra opcionalmente con otros servicios de Azure.

Service Usar
Azure App Service Use este servicio para el hospedaje web típico. Esto admite un amplio conjunto de puntos de conexión de API de funcionalidad, aplicaciones de pila completa y tareas en segundo plano. Este servicio incluye muchos entornos de ejecución de lenguaje de programación, así como la capacidad de proporcionar su propia pila, lenguaje o carga de trabajo desde un contenedor.
Funciones de Azure Use este servicio para proporcionar su propio código en los lenguajes admitidos para puntos de conexión HTTP o desencadenadores basados en eventos de los servicios de Azure.
Azure Spring Apps Use para implementar aplicaciones de Spring Boot sin cambios en el código.
Azure Container Apps Use para hospedar microservicios administrados y aplicaciones en contenedores en una plataforma sin servidor.
Azure Container Instances Úselo para escenarios de contenedor simples que no necesitan orquestación de contenedores.
Azure Kubernetes Service Use este servicio cuando necesite un clúster de Kubernetes. El plano de control para administrar el clúster se crea y se proporciona sin costo adicional.

Administración de puntos de conexión de servidor

Server Endpoint Management es la capacidad de administrar el punto de conexión del servidor y su proceso a través de una puerta de enlace. Esta puerta de enlace proporciona funcionalidad como el control de versiones, el almacenamiento en caché, la transformación, las directivas de API y la supervisión.

Service Usar
Azure API Management Use este servicio al producto de las API REST, OpenAPI y GraphQL con una puerta de enlace de API, incluidos los límites de cuotas y velocidades, la autenticación y la autorización, la transformación y las respuestas almacenadas en caché.
Introducción a Puerta de enlace de aplicaciones Se usa para el equilibrio de carga regional (capa 7 de OSI). Se puede usar para enrutar el tráfico en función de la ruta de acceso url o los encabezados de host, y admite la descarga SSL, la afinidad de sesión basada en cookies y las funcionalidades de Firewall de aplicaciones web (WAF).
Azure Front Door Use para el equilibrio de carga global (nivel 7 de OSI) para proporcionar una red global almacenada en caché y segura a los recursos estáticos y dinámicos, incluida la protección contra DDoS, el cifrado TLS de un extremo a otro, los firewalls de aplicaciones y el filtrado geográfico.
Azure Traffic Manager Use para distribuir el tráfico por DNS (nivel 7 de OSI) a las aplicaciones orientadas al público en las regiones globales de Azure. Traffic Manager usa DNS para dirigir las solicitudes del cliente al punto de conexión de servicio adecuado en función de un método de enrutamiento del tráfico. Admite varios métodos de enrutamiento de tráfico, como prioridad, rendimiento y enrutamiento geográfico. Es ideal para administrar el tráfico entre varias regiones o centros de datos.

Proceso automatizado

El proceso automatizado se automatiza mediante un evento como una programación programada u otro servicio de Azure y normalmente se usa para el procesamiento en segundo plano, el procesamiento por lotes o los procesos de larga duración.

Service Usar
Power Automate Use cuando necesite automatizar los procesos de negocio y los flujos de trabajo.
Funciones de Azure Use cuando necesite ejecutar código en función de una programación programada o en respuesta a eventos de otros servicios de Azure.
Servicios de contenedor (Azure Container Instances, Azure Kubernetes Service, Azure Container Apps) Uso para cargas de trabajo automatizables estándar
Azure Batch Use cuando necesite automatización de alto rendimiento.

Nube híbrida

La nube híbrida es un entorno informático que conecta los servicios de nube privada local de una empresa y la nube pública de terceros en una sola infraestructura flexible para ejecutar las aplicaciones y cargas de trabajo de la organización.

Service Usar
Azure Arc Use cuando necesite administrar todo el entorno, tanto en la nube como en los recursos locales, incluida la seguridad, la gobernanza, el inventario y la administración.

Si no necesita mantener su propia infraestructura, puede usar Azure Stack HCI para ejecutar máquinas virtuales locales.

Informática de alto rendimiento

La informática de alto rendimiento (HPC) es el uso del procesamiento paralelo para ejecutar programas de aplicaciones avanzados de forma eficaz, confiable y rápida. El término se aplica especialmente a los sistemas que funcionan por encima de un teraflop o 10^12 operaciones de punto flotante por segundo.

Service Usar
Azure Batch Azure Batch permite crear y administrar un conjunto de nodos de proceso (máquinas virtuales), instalar las aplicaciones que desea ejecutar y programar trabajos para que se ejecuten en los nodos. Los desarrolladores pueden usar Batch como un servicio de plataforma para compilar aplicaciones SaaS o aplicaciones cliente en las que se requiere una ejecución a gran escala.
Instancias de Azure BareMetal Use cuando necesite ejecutarse en un entorno no virtualizado con acceso de nivel raíz al sistema operativo, el almacenamiento y la red.
Área de trabajo de Azure Quantum Use cuando necesite desarrollar y experimentar con algoritmos cuánticos.
Microsoft Genomics Se usa para el procesamiento genómico compatible con ISO y compatible con HIPAA.

Obtenga más información sobre la informática de alto rendimiento en Azure.

Proceso basado en eventos

El proceso basado en eventos es el proceso desencadenado por un evento como una programación programada u otro servicio de Azure. El proceso basado en eventos se usa normalmente para el procesamiento en segundo plano, el procesamiento por lotes o los procesos de larga duración.

Service Usar
Power Virtual Agents Use cuando necesite crear bots de chat con una interfaz sin código.
Funciones de Azure Use cuando necesite ejecutar código en función de una programación programada o en respuesta a eventos de otros servicios de Azure.
Mensajería de Azure Service Bus Use cuando necesite desacoplar aplicaciones y servicios.

Proceso de CI/CD

El proceso de CI/CD es el proceso que se usa para compilar e implementar la aplicación.

Servicio Descripción
Azure DevOps Use Azure DevOps para una integración estrecha con la nube de Azure, incluida la autenticación y la autorización a los agentes hospedados, que compilan e implementan la aplicación.
Acciones de GitHub Use Acciones de GitHub para compilar e implementar las aplicaciones del repositorio de GitHub. Use la CLI de Azure para acceder de forma segura a Azure dentro de la acción.
Azure Virtual Machines Si usa otro sistema de CI/CD, puede usar Azure Virtual Machines para hospedar el sistema de CI/CD.

Recursos de Java

Recursos adicionales