Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Refactorización para usar las versiones más modernas de .NET y migración a Linux
Descripción general de
La modernización de las aplicaciones heredadas de .NET Framework puede ser útil para mejorar la seguridad, el rendimiento y la escalabilidad. Una forma eficaz de modernizar las aplicaciones de .NET Framework es migrarlas a una versión moderna de .NET (6 o superior). Estas son algunas de las principales ventajas de migrar estas aplicaciones a .NET de código abierto:
-
Reducir los costos asociados al uso de licencias de Windows usando un sistema operativo Linux.
-
Aprovechar la disponibilidad de los lenguajes modernos.
-
Obtener un rendimiento optimizado para Linux.
Muchas organizaciones siguen utilizando versiones anteriores de .NET Framework. Esto puede plantear riesgos de seguridad, ya que Microsoft ya no aborda las vulnerabilidades de las versiones anteriores. Microsoft ha dejado de dar soporte a las versiones recientes de .NET Framework 4.5.2, 4.6 y 4.6.1. Es muy importante evaluar los riesgos y beneficios de seguir utilizando las versiones anteriores del marco. Para reducir el riesgo y los costos, puede valer la pena invertir tiempo y esfuerzo en la refactorización a una versión moderna de .NET.
Impacto del costo
Considere un tipo de EC2 instancia de uso general (m5), que ofrezca un equilibrio de recursos de cómputo, memoria y red. Estas instancias son adecuadas para una variedad de aplicaciones, como servidores web, bases de datos medianas y repositorios de código fuente.
Por ejemplo, una instancia m5.xlarge bajo demanda con 4 v CPUs y 16 GB de memoria en Windows Server (licencia incluida) en EE. UU. Este (Virginia del Norte) cuesta 274,48$ al mes. Los mismos recursos en un servidor Linux cuestan 140,16 USD al mes. En este ejemplo, el costo se reduce en un 49 % al migrar la aplicación de .NET Framework a una versión moderna de .NET y poner en marcha la aplicación en un servidor Linux. El coste puede variar en función de las opciones (por ejemplo, el tipo de instancia, el sistema operativo o el almacenamiento) que elija al seleccionar una instancia. EC2
La migración de estas aplicaciones .NET Framework a la versión moderna de .NET requiere un esfuerzo por parte del equipo de desarrollo. Debe evaluar sus aplicaciones y sus dependencias para comprobar si son compatibles con la versión de la plataforma de destino. AWS Asistente de portabilidad para .NET
Existen otras herramientas, como Kit de herramientas de AWS para la refactorización de .NET y Asistente para la actualización de .NET
Recomendaciones de optimización de costos
Para migrar aplicaciones de .NET Framework, haga lo siguiente:
-
Requisitos previos: para utilizar Asistente de portabilidad para .NET, debe instalar .NET 5 o una versión posterior en la máquina en la que va a analizar el código fuente de la aplicación. Los recursos de la máquina deben tener una velocidad de GHz procesamiento mínima de 1,8, 4 GB de memoria y 5 GB de espacio de almacenamiento. Para obtener más información, consulte Prerequisites en la documentación de Asistente de portabilidad para .NET.
-
Evaluación: descargue Asistente de portabilidad para .NET como un archivo procesable
(de descarga). Puede descargar e instalar la herramienta en su máquina para iniciar la evaluación de sus aplicaciones. La página de evaluación contiene proyectos y paquetes transferidos APIs que son incompatibles con la versión moderna de.NET. Por este motivo, se producen errores de compilación en la solución después de la evaluación. Puede ver o descargar los resultados de la evaluación en un archivo CSV. Para obtener más información, consulte Port a solution en la documentación de Asistente de portabilidad para .NET. -
Refactorización: después de evaluar la aplicación, puede migrar sus proyectos a la versión del marco de trabajo de destino. Al migrar una solución, Asistente de portabilidad modificará los archivos del proyecto y parte del código. Puede consultar los registros para revisar los cambios en el código fuente. En la mayoría de los casos, el código requerirá un esfuerzo adicional para completar la migración y las pruebas de cara a la producción. Según la aplicación, algunos de los cambios pueden incluir el marco de la entidad, la identidad y la autenticación. Para obtener más información, consulte Port a solution en la documentación de Asistente de portabilidad para .NET.
Este es el primer paso para modernizar sus aplicaciones a contenedores. La modernización de las aplicaciones de .NET Framework y su almacenamiento en contenedores de Linux puede implicar una serie de factores empresariales y técnicos. Uno de los factores clave es la reducción del costo total de propiedad al pasar de un sistema operativo Windows a uno Linux. Esto reduce los costos de licencia al migrar la aplicación a una versión multiplataforma de .NET y a contenedores para optimizar la utilización de los recursos.
Cuando la aplicación se haya migrado a Linux, podrá utilizarla AWS App2Container
Consideraciones y recursos adicionales
-
Si tiene aplicaciones creadas en VB.NET (un marco heredado de 2002) y desea migrarlas a .NET 6, consulte la publicación Cómo portar aplicaciones antiguas de VB.NET a .NET 6.0 con Porting Assistant para.NET
en el blog Microsoft Workloads on. AWS -
Si tiene aplicaciones heredadas en Windows Communication Foundation (WCF) y desea ponerlas en marcha en una versión moderna de .NET, puede adoptar CoreWCF. Para obtener más información, consulte la publicación Modernización de aplicaciones WCF heredadas a CoreWCF mediante Porting Assistant para .NET
en el blog Microsoft Workloads on. AWS -
Puede agregar un asistente de portabilidad como una extensión a su IDE de Visual Studio. Esto le permite realizar todas las tareas necesarias para convertir el código sin necesidad de cambiar entre el IDE y la herramienta Asistente de portabilidad para .NET. Para obtener más información, consulte la publicación sobre cómo acelerar la modernización de las aplicaciones.NET con la extensión IDE de Porting Assistant para .NET Visual Studio
en el AWS blog Microsoft Workloads on. -
Asistente de portabilidad para .NET de AWS es ahora una herramienta de código abierto
con los componentes de análisis de código fuente y compatibilidad empleados en la evaluación. Esto puede animar a sus desarrolladores a utilizar y compartir los conocimientos y las prácticas recomendadas de portabilidad de .NET. -
Puede migrar aplicaciones de.NET Framework a la versión moderna de.NET en Linux mediante el AWS kit de herramientas para la refactorización de.NET. Para obtener más información, consulte la publicación Acelere la modernización de.NET con el AWS kit de herramientas para la refactorización de.NET
en el blog Microsoft Workloads on. AWS -
Puede acelerar la contenedorización y la migración de las aplicaciones de ASP.NET Core para utilizarlas
. AWS AWS App2Container