Aws-lambda-dotnet: Compatibilidad con .NET Core 2.1

Creado en 9 may. 2018  ·  45Comentarios  ·  Fuente: aws/aws-lambda-dotnet

Hola,

Solo tengo curiosidad por saber si la compatibilidad con .NET Core 2.1 estará disponible poco después de su lanzamiento, o ¿podemos esperar que tarde más tiempo, como sucedió con .NET Core 2.0? ¿Hay cambios significativos que deban realizarse en Lambda?

En otra nota, ¿hay planes para admitir .NET Core 2.1 RC1? 🤔

¡Gracias!

Comentario más útil

Lambda se implementa con 2.1.4 y 2.1.5 está en proceso de desarrollo. El LÉAME de Lambda se ha actualizado con una nueva tabla de seguimiento de las versiones actuales. Espero que ayude con la visibilidad.

Todos 45 comentarios

Estamos trabajando arduamente para que .NET Core 2.1 esté disponible en Lambda.
Sin embargo, no puedo comentar sobre ninguna línea de tiempo específica.
No hay planes para admitir .NET Core 2.1 RC1.

FYI .NET Core 2.1.0 se lanzó oficialmente hoy. ¡No puedo esperar para actualizar!

@raRaRa ¿ era eso? no lo pude encontrar por ningun lado

Todos los paquetes nuget se han actualizado. Todavía no hay anuncio por lo que parece.

¿Está disponible .net core 2.1 en Lambda? Según este artículo , parece que aún no está disponible.

Aún no está disponible. Sin embargo, ese blog es el lugar adecuado para buscar el anuncio.

¿Cómo va el progreso? 😁

Sigo trabajando en eso...

Por curiosidad, ¿qué características de 2.1 le entusiasman más en lo que respecta a Lambda?

@normj Principalmente mejoras en el tiempo de ejecución y el rendimiento de la red, HttpClientFactory y Span<T> , Memory<T> y amigos.

En otra nota, ¿está trabajando para admitir .NET Core 2.1.1 desde el principio, que tiene algunas correcciones de errores interesantes, o podemos esperar que 2.1.0 sea compatible primero?

Y gracias por mantenernos informados, muy apreciado. Me encanta el excelente trabajo que han hecho hasta ahora. ❤️

Lo que más espero con .NET Core 2.1 es Compilación cansada , ya que entiendo que debería ofrecer algunas mejoras significativas en el tiempo de inicio en frío .

Según el final de la vida útil de .NET Core 2 después del lanzamiento de 2.1 , ¿podemos obtener una estimación de cuándo estará listo para planificar las actualizaciones?

¿Alguna fecha de lanzamiento a la vista? Esperando esto para solucionar problemas de compatibilidad con MongoDB atlas.

Interesado en las siguientes características.

  • FE 2.1

    • Rendimiento

    • Agrupar por

  • .Net Núcleo 2.1

    • ApiController atributo y validación automática del modelo

¡Parece que 2.1 se lanzó hace 22 minutos!

para su información

Como se mencionó en [3], estamos trabajando en la actualización de .NET Core 2.1.1 que salió a fines de junio. Lo haremos disponible en el entorno de AWS Lambda tan pronto como podamos.

@normj ¿cuánto tiempo transcurrirá hasta que se actualice la extensión VSTS AWS Lambda Deploy Function para permitir la selección de tiempo de ejecución 2.1?

image

@aaronhudon Planeamos actualizar VSTS la próxima semana con la nueva enumeración. Desafortunadamente, se combinó con algunas otras características de VSTS que se lanzarán con la próxima versión. Avíseme si eso va a ser un problema y puedo ver qué podemos resolver.

Parece que .NET Core 2.1.2 ya está disponible con alguna actualización de seguridad. ¿Va a ser un proceso difícil o lento para que Lambda sea compatible con la última versión de .NET Core?

@raRaRa Estamos trabajando en el 2.1.2 pero no estoy seguro del momento en que estará en Lambda.

Actualicé AWS Toolkit a la versión 1.14.4.0, Microsoft.AspNetCore.App a 2.1.0 y Amazon.Lambda.Tools a 2.2.0

Cuando publico en AWS Lambda, el cuadro de diálogo muestra el marco correcto (2.1) y se implementa sin problemas.

Sin embargo, cuando accedo a la API, aparece un error y CloudWatch dice:

It was not possible to find any compatible framework version
The specified framework 'Microsoft.AspNetCore.App', version '2.1.0' was not found.
- Check application dependencies and target a framework version installed at:
/
- Alternatively, install the framework version '2.1.0'.
Failed to execute the Lambda function. The dotnet CLI failed to start with the provided deployment package. Please check CloudWatch logs for this Lambda function to get detailed information about this failure.: LambdaException

¿Estoy haciendo algo mal?

En su archivo serverless.template para el recurso AWS::Serverless::Function, actualizó la propiedad Runtime a dotnetcore2.1 . Lo sentimos, deberíamos haber puesto eso en la publicación del blog.

@normj Esa era la pieza que faltaba. ¡Gracias!

Descubrí que para habilitar la Compilación en niveles, debe establecerse como una variable de entorno de función de AWS. Por ejemplo, en serverless.template:

"Environment": {
    "Variables": {
        "COMPlus_TieredCompilation" : 1
    }
}

Parece tener una mejora de rendimiento notable en el arranque en frío.

@ferugi Súper interesante, gracias por compartir. ¿Sabe si hay algún efecto secundario conocido del uso de la compilación en niveles, por ejemplo, podría causar un peor rendimiento general mientras que el tiempo de inicio se vuelve más rápido?

@ferugi ¿Hay alguna posibilidad de que pueda cuantificar la mejora del rendimiento? Realmente no noté mucho en mis pruebas, pero es posible que no haya tenido suficiente de un escenario del mundo real.

Disculpe por la tardanza en responder. @normj No tengo un buen ejemplo del mundo real, pero una prueba rápida con Lambda y API Gateway dio estos resultados (memoria de 128 MB).
@raRaRa No sé lo suficiente como para darte una respuesta real. Dicho esto, en la prueba que realicé, parecía que había un poco más de variación en el tiempo de respuesta de las llamadas posteriores cuando la Compilación por niveles estaba habilitada.

@normj ¿ Alguna actualización sobre la compatibilidad con .NET Core 2.1.2 ? ¡Gracias!

Sin actualizaciones. Seguimos trabajando para sacarlo lo antes posible.

[SOLUCIONADO] Eliminando y volviendo a crear la instancia de mi aplicación en Beanstalk y luego volviendo a implementar.

Aparentemente, Dotnet Core 2.1 es compatible de forma nativa en beanstalk según el enlace a continuación. Pero sigo recibiendo el mensaje "Error de proceso" como si no lo fuera.

https://aws.amazon.com/about-aws/whats-new/2018/06/aws-elastic-beanstalk-supports--net-core-2-1-on-windows-server-p/

Una vez que haya actualizado a 2.1.2, 2.1.0 ya no permitirá cambios dinámicos en los archivos cshtml. Recibo este error https://github.com/dotnet/core/issues/1728

Esto nos ha obligado a actualizar a 2.1.2 para recuperar la productividad. Desafortunadamente, ya no podemos implementar Lambda, por lo que actualmente estamos atascados.

También bastante atascado sin el último parche. ¿Estará listo pronto 2.1.1/2.1.2, o deberíamos considerar cambiar nuestra arquitectura por completo, a contenedores docker autoconstruidos con Fargate/Kubernetes autohospedados?

Estamos trabajando para lanzar la versión 2.1.2 lo antes posible.
No deberías necesitar cambiar nada.

Mientras tanto, 2.1.3 está disponible.

Solo por curiosidad, ¿qué implica actualizar a la última versión principal o secundaria de .NET? Se siente como un ciclo continuo de recuperación.

Hay muchos pasos detrás de escena para construir, probar, verificar e implementar nuevos tiempos de ejecución en AWS Lambda.

Tienes toda la razón en lo del ciclo de recuperación. Mejorar eso es una de nuestras principales prioridades para el soporte de AWS Lambda .NET Core.

2.1.4 ya está disponible.

Estamos trabajando en eso ahora en su lugar. Nos mantendremos informados.

Descubrí que este problema se solucionó con .NET Core 2.1.4.

Parece una buena razón para actualizar Lambda Environment a 2.1.4 pronto :), ya que puede ayudar en el buen uso de los recursos de CPU subyacentes.

Gracias por el trabajo

@ melih154 Wow, no estaba al tanto de este problema. ¿El nuevo socket está habilitado de forma predeterminada en .NET Core 2.1?

Realmente necesitamos compatibilidad con .NET Core 2.1.4. 🍕

Lambda se implementa con 2.1.4 y 2.1.5 está en proceso de desarrollo. El LÉAME de Lambda se ha actualizado con una nueva tabla de seguimiento de las versiones actuales. Espero que ayude con la visibilidad.

¡Seguro que sí! Muchas gracias.

¿Fue útil esta página
0 / 5 - 0 calificaciones