As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Refatorar para o .NET Modern e migrar para o Linux
Visão geral do
A modernização de aplicações .NET Framework legadas pode ajudar a melhorar a segurança, a performance e a escalabilidade. Uma forma eficaz de modernizar as aplicações .NET Framework é migrá-las para uma versão do .NET Modern (6+). Confira algumas das principais vantagens de migrar essas aplicações para o. NET de código aberto:
-
Para reduzir os custos de licenciamento do Windows executando-os em um sistema operacional Linux
-
Aproveitar a disponibilidade de linguagens modernas
-
Obtenha performance otimizada para execução no Linux
Muitas organizações ainda estão executando versões mais antigas do .NET Framework. Isso pode representar riscos de segurança, já que as vulnerabilidades nas versões mais antigas não são mais tratadas pela Microsoft. A Microsoft encerrou o suporte para as versões recentes do. NET Framework 4.5.2, 4.6 e 4.6.1. É muito importante avaliar os riscos e as vantagens de continuar executando as versões mais antigas do framework. Para reduzir o risco e os custos, pode valer a pena investir tempo e esforço na refatoração para uma versão moderna do. NET.
Impacto do custo
Considere um tipo de EC2 instância de uso geral (m5), que ofereça um equilíbrio entre recursos de computação, memória e rede. Essas instâncias são adequadas para uma variedade de aplicações, como servidores web, bancos de dados de médio porte e repositórios de código-fonte.
Por exemplo, uma instância m5.xlarge sob demanda com 4 V CPUs e 16 GB de memória no Windows Server (licença incluída) no Leste dos EUA (Norte da Virgínia) custa 274,48 USD mensais. Os mesmos recursos em um servidor Linux custam USD 140,16 por mês. Neste exemplo, há uma redução de 49% no custo quando você migra sua aplicação do. NET Framework para uma versão moderna do .NET e executa a aplicação em um servidor Linux. Seu custo pode variar dependendo das opções (por exemplo, tipo de instância, sistema operacional, armazenamento) que você escolher ao selecionar uma EC2 instância
A portabilidade dessas aplicações .NET Framework para o .NET Modern exige esforço do desenvolvedor. Você deve avaliar seus aplicativos e suas dependências para ver se eles são compatíveis com a versão da plataforma de destino. AWS Assistente de Portabilidade para .NET
Há outras ferramentas, como o Kit de ferramentas da AWS para refatoração do .NET e o Assistente de Portabilidade para .NET
Recomendações de otimização de custos
Para migrar aplicações .NET Framework, faça o seguinte:
-
Pré-requisitos: para usar o Assistente de Portabilidade para .NET, você deve instalar o .NET 5+ na máquina em que planeja analisar o código-fonte da aplicação. Os recursos na máquina devem ter no mínimo 1,8 velocidade de GHz processamento, 4 GB de memória e 5 Gb de espaço de armazenamento. Para obter mais informações, consulte Prerequisites na documentação do Assistente de Portabilidade para .NET.
-
Avaliação: baixe o Assistente de Portabilidade para .NET como um arquivo executável
(download). Você pode baixar e instalar a ferramenta em sua máquina para iniciar a avaliação de suas aplicações. A página de avaliação contém projetos e pacotes portados APIs que são incompatíveis com o.NET moderno. Por esse motivo, você recebe erros de criação na solução após a avaliação. Você pode visualizar ou baixar as decobertas da avaliação em um arquivo CSV. Para obter mais informações, consulte Port a solution na documentação do Assistente de Portabilidade para .NET. -
Refatoração: depois de avaliar a aplicação, você pode portar seus projetos para a versão do framework de destino. Ao portar uma solução, seus arquivos de projeto e parte do código serão modificados pelo Assistente de Portabilidade. Você pode verificar os logs para analisar as alterações em seu código-fonte. Na maioria dos casos, o código exigirá um esforço adicional para concluir a migração e os testes para deixá-lo pronto para produção. Dependendo da aplicação, algumas das alterações podem incluir o framework de entidades, a identidade e a autenticação. Para obter mais informações, consulte Port a solution na documentação do Assistente de Portabilidade para .NET.
Esta é a primeira etapa para modernizar suas aplicações em contêineres. Pode haver vários fatores comerciais e técnicos para modernizar suas aplicações .NET Framework para contêineres Linux. Um dos fatores mais importantes é reduzir o custo total de propriedade ao mudar de um sistema operacional Windows para o Linux. Isso reduz os custos de licenciamento ao migrar sua aplicação para uma versão multiplataforma do .NET e para contêineres para otimizar a utilização dos recursos.
Depois que sua aplicação for portada para o Linux, você poderá usar o AWS App2Container
Considerações e recursos adicionais
-
Se você tiver aplicativos criados no VB.NET (uma estrutura legada de 2002) e quiser portá-los para o.NET 6, consulte a postagem Portar aplicativos VB.NET legados para o.NET 6.0 com o Porting Assistant para.NET no blog
Microsoft Workloads on. AWS -
Se você tiver aplicações legadas no Windows Communication Foundation (WCF) e quiser executá-las no .NET Modern, você pode adotar o CoreWCF. Para obter mais informações, consulte a postagem Modernizando aplicativos WCF legados para CoreWCF usando o Porting Assistant para.NET
no blog Microsoft Workloads on. AWS -
Você pode adicionar o assistente de portabilidade como uma extensão ao seu IDE do Visual Studio. Isso permite que você execute todas as tarefas necessárias para converter seu código sem precisar alternar entre o IDE e a ferramenta Assistente de Portabilidade para .NET. Para obter mais informações, consulte a postagem Acelere a modernização do aplicativo.NET com o Porting Assistant for .NET Visual Studio IDE
no blog Microsoft Workloads on AWS . -
O Assistente de Portabilidade para .NET da AWS agora é uma ferramenta de código aberto
com o código-fonte e os componentes de análise de compatibilidade da avaliação. Isso pode incentivar seus desenvolvedores a usar e compartilhar o conhecimento e as práticas recomendadas de portabilidade do .NET. -
Você pode portar aplicativos do.NET framework para o.NET moderno no Linux usando o AWS Toolkit for .NET Refactoring. Para obter mais informações, consulte a postagem Acelere a modernização do.NET com o AWS Toolkit for .NET Refactoring no blog
Microsoft Workloads on. AWS -
Você pode acelerar a conteinerização e a migração de aplicativos ASP.NET Core
para o uso. AWS AWS App2Container