Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Sugerencia
Este contenido es un extracto del libro electrónico, Arquitectura de aplicaciones .NET nativas de nube para Azure, disponible en .NET Docs o como un PDF descargable gratuito que se puede leer sin conexión.
Piense en las aplicaciones que su organización necesita desarrollar. A continuación, examine las aplicaciones existentes en la cartera. ¿Cuántos de ellos garantizan una arquitectura nativa de la nube? ¿Todos ellos? ¿Quizás algunos?
Al aplicar el análisis de costes y beneficios, podría ser que algunos no apoyen el esfuerzo. El costo de convertirse en nativo de nube superaría mucho el valor empresarial de la aplicación.
¿Qué tipo de aplicación puede ser candidata para la nube nativa?
Sistemas empresariales estratégicos que necesitan evolucionar constantemente las funcionalidades y características empresariales
Una aplicación que requiere una alta velocidad de implementación, con alta confianza
Un sistema en el que las características individuales deben liberarse sin una reimplementación completa del sistema completo
Una aplicación desarrollada por equipos con experiencia en diferentes entornos tecnológicos
Una aplicación con componentes que deben escalarse de forma independiente
Las aplicaciones de línea de negocio más pequeñas y menos impactantes pueden resultar muy bien con una arquitectura monolítica simple hospedada en un entorno paaS en la nube.
A continuación, hay sistemas heredados. Aunque nos gustaría desarrollar nuevas aplicaciones, a menudo somos responsables de modernizar las cargas de trabajo heredadas críticas para el negocio.
Modernización de aplicaciones heredadas
El libro electrónico gratuito de Microsoft Modernize existing .NET applications with Azure cloud and Windows Containers (Modernize existing .NET applications with Azure cloud and Windows Containers) proporciona instrucciones sobre cómo migrar cargas de trabajo locales a la nube. En la figura 1-10 se muestra que no hay una estrategia única y única para modernizar las aplicaciones heredadas.
Figura 1-10. Estrategias para migrar cargas de trabajo heredadas
Es posible que las aplicaciones monolíticas que no son críticas se beneficien de una migración rápida mediante lift-and-shift. Aquí, la carga de trabajo local se rehospeda en una máquina virtual basada en la nube, sin cambios. Este enfoque usa el modelo iaaS (infraestructura como servicio). Azure incluye varias herramientas como Azure Migrate, Azure Site Recovery y Azure Database Migration Service para ayudar a simplificar el traslado. Aunque esta estrategia puede producir algunos ahorros de costos, estas aplicaciones normalmente no estaban diseñadas para desbloquear y aprovechar las ventajas de la informática en la nube.
Las aplicaciones heredadas que son críticas para la empresa suelen beneficiarse de una migración mejorada optimizada para la nube . Este enfoque incluye optimizaciones de implementación que habilitan los servicios en la nube clave, sin cambiar la arquitectura principal de la aplicación. Por ejemplo, puede incluir en contenedores la aplicación e implementarla en un orquestador de contenedores, como Azure Kubernetes Services, que se describe más adelante en este libro. Una vez en la nube, la aplicación puede consumir servicios de respaldo en la nube, como bases de datos, colas de mensajes, supervisión y almacenamiento en caché distribuido.
Por último, las aplicaciones monolíticas que proporcionan funciones empresariales estratégicas pueden beneficiarse mejor de un enfoque nativo de la nube , el tema de este libro. Este enfoque proporciona agilidad y velocidad. A cambio, conlleva un cambio de plataforma, el rediseño de la arquitectura y la reescritura de código. Con el tiempo, una aplicación heredada se podría descomponer en microservicios, en contenedores y, en última instancia, volver a plataformarse en una arquitectura nativa de la nube.
Si usted y su equipo creen que un enfoque nativo de la nube es adecuado, le corresponde racionalizar la decisión con su organización. ¿Cuál es exactamente el problema empresarial que resolverá un enfoque nativo de la nube? ¿Cómo se alinearía con las necesidades empresariales?
¿Lanzamientos rápidos de funcionalidades con mayor confianza?
Escalabilidad específica: ¿un uso más eficaz de los recursos?
¿Se ha mejorado la resistencia del sistema?
¿Se ha mejorado el rendimiento del sistema?
¿Más visibilidad de las operaciones?
¿Combina plataformas de desarrollo y almacenes de datos para llegar a la mejor herramienta para el trabajo?
¿Inversión en aplicaciones a prueba de futuro?
La estrategia de migración adecuada depende de las prioridades organizativas y de los sistemas a los que se dirige. Para muchos, puede ser más rentable optimizar en la nube una aplicación monolítica o agregar servicios generales a una aplicación de N niveles. En estos casos, todavía puede usar todas las funcionalidades de PaaS en la nube, como las que ofrece Azure App Service.
Resumen
En este capítulo, presentamos la informática nativa de la nube. Se ha proporcionado una definición junto con las funcionalidades clave que impulsan una aplicación nativa de la nube. Hemos examinado los tipos de aplicaciones que podrían justificar esta inversión y esfuerzo.
Tras esta introducción, profundizaremos en detalle en el concepto "nativo de nube".
Referencias
Microservicios de .NET: arquitectura para aplicaciones .NET en contenedor
Modernización de aplicaciones .NET existentes con contenedores en la nube de Azure y Windows
Aplicaciones nativas en la nube: envío más rápido, reducción del riesgo y crecimiento de su negocio
Micro Deploy de Uber Engineering: Despliegue diario con confianza
Control de sobrecarga para el escalado de microservicios de WeChat