Diseño de aplicaciones web modernas con ASP.NET Core y Azure
Antes de leer este artículo, se recomienda leer primero patrón de aplicación web moderna para .NET. El artículo Patrón de aplicaciones web modernas en .NET:
- Es la guía recomendada de Microsoft para los patrones de aplicaciones web modernas. Proporciona una arquitectura prescriptiva, código e instrucciones de configuración sobre cómo modernizar las aplicaciones web en la nube.
- Proporciona una implementación de referencia de GitHub: una aplicación web de nivel de producción que usa procedimientos recomendados. Contiene ejemplos concretos para desarrollar aplicaciones web modernas en Azure.
- Está más actualizado que este artículo y se actualiza activamente.
EDITION v8.0: actualizado a ASP.NET Core 8.0
Consulte el registro de cambios para ver las modificaciones del libro y las colaboraciones para la comunidad.
PUBLICADO POR
Equipos de producto de Microsoft Developer Division, .NET y Visual Studio
Una división de Microsoft Corporation
One Microsoft Way
Redmond, Washington 98052-6399
Copyright © 2023 de Microsoft Corporation
Todos los derechos reservados. No se podrá reproducir ni transmitir ninguna parte del contenido de este libro en cualquier forma ni por ningún medio sin el permiso por escrito del editor.
Este libro se proporciona “tal cual” y expresa las opiniones del autor. Las vistas, opiniones e información expresadas en este libro, incluidas las direcciones URL y otras referencias a sitios web de Internet, pueden cambiar sin previo aviso.
Algunos ejemplos que se muestran aquí se proporcionan solo para la ilustración y son ficticios. No se pretende ni se debe deducir ninguna asociación o conexión real.
Microsoft y las marcas comerciales enumeradas en https://www.microsoft.com en la página web "Marcas comerciales" son marcas comerciales del grupo de empresas de Microsoft.
Mac y macOS son marcas comerciales de Apple Inc.
El logotipo de la ballena de Docker es una marca registrada de Docker, Inc. Usado por permiso.
Todas las demás marcas y logotipos son propiedad de sus respectivos propietarios.
Autor:
Steve "ardalis" Smith - Arquitecto de software y entrenador - Ardalis.com
Editores:
Maira Wenzel
Vínculos de acción
Este libro electrónico también está disponible en formato PDF (solo versión en inglés) Descargar
Clona o haz un fork de la aplicación de referencia eShopOnWeb en GitHub
Introducción
.NET 8 y ASP.NET Core ofrecen varias ventajas sobre el desarrollo tradicional de .NET. Debe usar .NET 8 para las aplicaciones de servidor si algunas o todas las siguientes son importantes para el éxito de la aplicación:
Compatibilidad multiplataforma.
Uso de microservicios.
Uso de contenedores de Docker.
Requisitos de alto rendimiento y escalabilidad.
Control de versiones en paralelo de versiones de .NET por aplicación en el mismo servidor.
Las aplicaciones tradicionales de .NET 4.x pueden y admiten muchos de estos requisitos, pero ASP.NET Core y .NET 8 se han optimizado para ofrecer compatibilidad mejorada con los escenarios anteriores.
Cada vez más organizaciones eligen hospedar sus aplicaciones web en la nube mediante servicios como Microsoft Azure. Debe considerar la posibilidad de hospedar la aplicación en la nube si lo siguiente es importante para la aplicación u organización:
Reducción de la inversión en los costos del centro de datos (hardware, software, espacio, utilidades, administración de servidores, etc.)
Precios flexibles (pago en función del uso, no para la capacidad inactiva).
Confiabilidad extrema.
Movilidad mejorada de la aplicación; Cambie fácilmente dónde y cómo se implementa la aplicación.
Capacidad flexible; aumentar o disminuir según las necesidades reales.
La creación de aplicaciones web con ASP.NET Core, hospedada en Azure, ofrece muchas ventajas competitivas frente a las alternativas tradicionales. ASP.NET Core está optimizado para prácticas modernas de desarrollo de aplicaciones web y escenarios de hospedaje en la nube. En esta guía, aprenderá a diseñar sus aplicaciones ASP.NET Core para aprovechar mejor estas funcionalidades.
Versión
Esta guía se ha revisado para cubrir versión de .NET 8.0 junto con muchas actualizaciones adicionales relacionadas con la misma "oleada" de tecnologías (es decir, Azure y tecnologías de terceros adicionales) que coinciden a tiempo con la versión de .NET 8.0. Este es el motivo por el que la versión del libro se ha actualizado también a la versión 8.0.
Propósito
En esta guía se proporcionan instrucciones integrales sobre la creación de aplicaciones web monolíticas mediante ASP.NET Core y Azure. En este contexto, "monolítico" hace referencia al hecho de que estas aplicaciones se implementan como una sola unidad, no como una colección de servicios y aplicaciones interactivos. En algunos contextos, el término monolito se puede usar de manera peyorativa, pero en la gran mayoría de las situaciones, una sola aplicación es mucho más fácil de construir, implementar y depurar que una aplicación compuesta de muchos servicios diferentes, mientras sigue cumpliendo los requisitos empresariales.
Esta guía es complementaria a ".NET Microservices. Arquitectura para aplicaciones .NET en contenedores", que se centra más en Docker, microservicios y despliegue de contenedores para alojar aplicaciones empresariales.
Microservicios de .NET. Arquitectura para aplicaciones .NET en contenedor
- Libro electrónico
https://aka.ms/MicroservicesEbook - Aplicación de ejemplo
https://aka.ms/microservicesarchitecture
Quién debe usar esta guía
El público de esta guía es principalmente desarrolladores, responsables de desarrollo y arquitectos interesados en crear aplicaciones web modernas mediante tecnologías y servicios de Microsoft en la nube.
Un público secundario es responsables de la toma de decisiones técnicas que ya están familiarizados ASP.NET o Azure y buscan información sobre si tiene sentido actualizar a ASP.NET Core para proyectos nuevos o existentes.
Cómo puede usar esta guía
Esta guía se ha condensado en un documento relativamente pequeño que se centra en la creación de aplicaciones web con tecnologías modernas de .NET y Azure. Por lo tanto, se puede leer en su totalidad para proporcionar una base de comprensión de estas aplicaciones y sus consideraciones técnicas. La guía, junto con su aplicación de ejemplo, también puede servir como punto de partida o referencia. Use la aplicación de ejemplo asociada como plantilla para sus propias aplicaciones o para ver cómo puede organizar los elementos de componente de la aplicación. Consulte los principios de la guía y la descripción de las opciones de arquitectura y tecnología, así como las consideraciones de decisión al evaluar estas opciones para su propia aplicación.
No dude en reenviar esta guía a su equipo para ayudar a garantizar una comprensión común de estas consideraciones y oportunidades. Tener a todos trabajando desde un conjunto común de terminología y principios subyacentes ayuda a garantizar una aplicación coherente de patrones y prácticas arquitectónicos.
Enviar sus comentarios
Este libro y ejemplos relacionados evolucionan constantemente, por lo que se agradecen sus comentarios. Si tiene comentarios sobre cómo se puede mejorar este libro y lo está leyendo en <learn.microsoft.com>, use la sección Comentarios que aparece al final de la página:
Como se ha resaltado en la captura de pantalla anterior, la sección de comentarios le permite enviar comentarios para:
- Este producto: mediante el formulario de comentarios del producto .NET.
- Esta página: mediante una plantilla de problemas de GitHub con los detalles de la página.
Si está leyendo este libro como un PDF, puede enviar comentarios creando un problema de GitHub en Documentos de .NET o mediante la plantilla de problemas de GitHub en Libros electrónicos de arquitectura de .NET.
Referencias
- elegir entre .NET y .NET Framework para aplicaciones de servidor
https://learn.microsoft.com/dotnet/standard/choosing-core-framework-server