Partilhar via


Arquitete aplicativos Web modernos com ASP.NET Core e Azure

Antes de ler este artigo, recomendamos que leia primeiro o padrão Modern Web App para .NET. O Modern Web App padrão para .NET artigo:

  • É o guia recomendado pela Microsoft para padrões modernos de aplicativos Web. Ele fornece uma arquitetura prescritiva, código e orientação de configuração sobre como modernizar aplicativos Web na nuvem.
  • Fornece uma implementação de referência do GitHub: Uma aplicação Web de nível de produção que usa práticas recomendadas. Contém exemplos concretos para criar Aplicativos Web Modernos no Azure.
  • Está mais atualizado do que este artigo e é atualizado ativamente.

Imagem da capa do livro do guia Architect Modern Web Applications.

EDITION v8.0 - Atualizado para ASP.NET Core 8.0

Consulte o changelog para as atualizações do livro e as contribuições da comunidade.

PUBLICADO POR

Equipes de produto Microsoft Developer Division, .NET e Visual Studio

Uma divisão da Microsoft Corporation

One Microsoft Way

Redmond, Washington 98052-6399

Copyright © 2023 por Microsoft Corporation

Todos os direitos reservados. Nenhuma parte do conteúdo deste livro pode ser reproduzida ou transmitida de qualquer forma ou por qualquer meio sem a permissão por escrito da editora.

Este livro é fornecido "as-is" e expressa as opiniões e os pontos de vista do autor. Os pontos de vista, opiniões e informações expressas neste livro, incluindo URL e outras referências a sites da Internet, podem mudar sem aviso prévio.

Alguns exemplos aqui descritos são fornecidos apenas para ilustração e são fictícios. Nenhuma associação ou conexão real é intencional ou deve ser inferida.

Microsoft e as marcas comerciais listadas em https://www.microsoft.com na página Web "Marcas comerciais" são marcas comerciais do grupo de empresas Microsoft.

Mac e macOS são marcas comerciais da Apple Inc.

O logotipo da baleia Docker é uma marca registrada da Docker, Inc. Usado com permissão.

Todas as outras marcas e logotipos são propriedade de seus respetivos proprietários.

Autor:

Steve "ardalis" Smith - Arquiteto de Software e Formador - Ardalis.com

Editores:

Maira Wenzel

  • Este e-book também está disponível em formato PDF (apenas na versão em inglês) Download

  • Clonar/Fazer fork da aplicação de referência eShopOnWeb no GitHub

Introdução

O .NET 8 e o ASP.NET Core oferecem várias vantagens em relação ao desenvolvimento .NET tradicional. Você deve usar o .NET 8 para seus aplicativos de servidor se alguns ou todos os itens a seguir forem importantes para o sucesso do seu aplicativo:

  • Suporte multiplataforma.

  • Utilização de microsserviços.

  • Uso de contêineres Docker.

  • Requisitos de alto desempenho e escalabilidade.

  • Versionamento lado a lado de versões do .NET por aplicação no mesmo servidor.

Os aplicativos .NET 4.x tradicionais podem e suportam muitos desses requisitos, mas o ASP.NET Core e o .NET 8 foram otimizados para oferecer suporte aprimorado para os cenários acima.

Cada vez mais organizações estão optando por hospedar seus aplicativos Web na nuvem usando serviços como o Microsoft Azure. Você deve considerar hospedar seu aplicativo na nuvem se os seguintes itens forem importantes para seu aplicativo ou organização:

  • Investimento reduzido em custos de data center (hardware, software, espaço, utilitários, gerenciamento de servidores, etc.)

  • Preços flexíveis (pague com base no uso, não pela capacidade ociosa).

  • Extrema fiabilidade.

  • Melhoria da mobilidade das aplicações; Altere facilmente onde e como seu aplicativo é implantado.

  • Capacidade flexível; aumentar ou diminuir a escala com base nas necessidades reais.

A criação de aplicativos Web com o ASP.NET Core, hospedado no Azure, oferece muitas vantagens competitivas em relação às alternativas tradicionais. O ASP.NET Core é otimizado para práticas modernas de desenvolvimento de aplicativos Web e cenários de hospedagem em nuvem. Neste guia, você aprenderá como arquitetar seus aplicativos ASP.NET Core para melhor aproveitar esses recursos.

Versão

Este guia foi revisto para abranger a versão do .NET 8.0, juntamente com muitas atualizações adicionais relacionadas a essa mesma "onda" de tecnologias (ou seja, Azure e tecnologias de terceiros adicionais) que coincidem temporalmente com o lançamento do .NET 8.0. É por isso que a versão do livro também foi atualizada para a versão 8.0.

Finalidade

Este guia fornece orientação completa sobre como criar aplicativos Web monolíticos usando o ASP.NET Core e o Azure. Neste contexto, "monolítico" refere-se ao fato de que esses aplicativos são implantados como uma única unidade, não como uma coleção de serviços e aplicativos interagindo. Em alguns contextos, o termo monólito pode ser usado como pejorativo, mas na grande maioria das situações uma única aplicação é muito mais fácil de criar, implantar e depurar do que uma aplicação composta por muitos serviços diferentes, ainda conseguindo atingir os requisitos comerciais.

Este guia é complementar ao ".NET Microservices. Architecture for Containerized .NET Applications", que se concentra mais no Docker, microsserviços e implantação de contêineres para hospedar aplicativos corporativos.

Microsserviços .NET. Arquitetura para aplicativos .NET em contêineres

Quem deve usar este guia

O público deste guia é principalmente desenvolvedores, líderes de desenvolvimento e arquitetos que estão interessados em criar aplicativos Web modernos usando tecnologias e serviços da Microsoft na nuvem.

Um público secundário são os tomadores de decisões técnicas que já estão familiarizados com o ASP.NET ou o Azure e estão procurando informações sobre se faz sentido atualizar para o ASP.NET Core para projetos novos ou existentes.

Como pode utilizar este guia

Este guia foi condensado em um documento relativamente pequeno que se concentra na criação de aplicativos Web com tecnologias .NET modernas e o Azure. Como tal, pode ser lido na íntegra para fornecer uma base de compreensão de tais aplicações e suas considerações técnicas. O guia, juntamente com sua aplicação de exemplo, também pode servir como ponto de partida ou referência. Use o aplicativo de exemplo associado como um modelo para seus próprios aplicativos ou para ver como você pode organizar as partes componentes do seu aplicativo. Consulte os princípios do guia e a cobertura de opções de arquitetura e tecnologia e considerações de decisão quando estiver avaliando essas opções para seu próprio aplicativo.

Sinta-se à vontade para encaminhar este guia para sua equipe para ajudar a garantir um entendimento comum dessas considerações e oportunidades. Ter todos trabalhando a partir de um conjunto comum de terminologia e princípios subjacentes ajuda a garantir a aplicação consistente de padrões e práticas arquitetônicas.

Envie os seus comentários

Este livro e amostras relacionadas estão em constante evolução, por isso o seu feedback é bem-vindo. Se você tiver comentários sobre como este livro pode ser melhorado e estiver lendo este livro em <learn.microsoft.com>, use a seção Feedback na parte inferior da página:

seção de comentários de todos os rodapés de artigos .NET.

Conforme destacado na captura de tela anterior, a seção de comentários permite que você envie comentários para:

  • Este produto: usando o formulário de comentários do produto .NET.
  • Esta página: usando um modelo de problema do GitHub com os detalhes da página.

Se você estiver lendo este livro como um PDF, poderá enviar comentários criando um novo de problemas do .NET Docs: GitHub ou usando o modelo de edição .NET Architecture eBooks: GitHub.

Referências