Seleccione sus preferencias de cookies

Usamos cookies esenciales y herramientas similares que son necesarias para proporcionar nuestro sitio y nuestros servicios. Usamos cookies de rendimiento para recopilar estadísticas anónimas para que podamos entender cómo los clientes usan nuestro sitio y hacer mejoras. Las cookies esenciales no se pueden desactivar, pero puede hacer clic en “Personalizar” o “Rechazar” para rechazar las cookies de rendimiento.

Si está de acuerdo, AWS y los terceros aprobados también utilizarán cookies para proporcionar características útiles del sitio, recordar sus preferencias y mostrar contenido relevante, incluida publicidad relevante. Para aceptar o rechazar todas las cookies no esenciales, haga clic en “Aceptar” o “Rechazar”. Para elegir opciones más detalladas, haga clic en “Personalizar”.

Enlaces de tiempo de ejecución de Lambda SnapStart para .NET

Modo de enfoque
Enlaces de tiempo de ejecución de Lambda SnapStart para .NET - AWS Lambda

Puede utilizar enlaces de tiempo de ejecución para implementar el código antes de que Lambda cree una instantánea o después de que Lambda restaure una función desde una instantánea. Los enlaces de tiempo de ejecución de .NET están disponibles como parte del paquete Amazon.Lambda.Core (versión 2.5.0 o posterior). Esta biblioteca brinda dos métodos que puede utilizar para definir sus enlaces de tiempo de ejecución:

  • RegisterBeforeSnapshot(): código para ejecutar antes de la creación de la instantánea

  • RegisterAfterSnapshot(): código para ejecutar después de reanudar una función a partir de una instantánea

nota

Si utiliza el marco de Lambda Annotations para .NET, actualice a Amazon.Lambda.Annotations versión 1.6.0 o posterior para garantizar la compatibilidad con SnapStart.

Registro y ejecución de enlaces en tiempo de ejecución

Registre sus enlaces en el código de inicialización. Tenga en cuenta las siguientes pautas según el modelo de ejecución de la función de Lambda:

Para registrar los enlaces en tiempo de ejecución para SnapStart en .NET, utilice los métodos siguientes:

Amazon.Lambda.Core.SnapshotRestore.RegisterBeforeSnapshot(BeforeCheckpoint); Amazon.Lambda.Core.SnapshotRestore.RegisterAfterRestore(AfterCheckpoint);

Cuando se registran varios tipos de enlaces, el orden en el que Lambda ejecuta los enlaces en tiempo de ejecución viene determinado por el orden de registro:

  • RegisterBeforeSnapshot(): se ejecuta en el orden inverso al de registro

  • RegisterAfterSnapshot(): se ejecuta en el orden del registro

nota

Cuando Lambda crea una instantánea, el código de inicialización puede ejecutarse durante un máximo de 15 minutos. El límite de tiempo es de 130 segundos o el tiempo de espera de la función configurado (máximo de 900 segundos), lo que sea mayor. Los enlaces en tiempo de ejecución RegisterBeforeSnapshot() cuentan para el límite de tiempo del código de inicialización. Cuando Lambda restaura una instantánea, el tiempo de ejecución debe cargarse y los enlaces de tiempo de ejecución RegisterAfterSnapshot() deben completarse antes de que transcurra el tiempo de espera (10 segundos). De lo contrario, obtendrá una excepción SnapStartTimeoutException.

Ejemplo

La siguiente función de ejemplo muestra cómo ejecutar el código antes de comprobar (RegisterBeforeSnapshot) y después de restaurarlo (RegisterAfterRestore).

public class SampleClass { public SampleClass() { Amazon.Lambda.Core.SnapshotRestore.RegisterBeforeSnapshot(BeforeCheckpoint); Amazon.Lambda.Core.SnapshotRestore.RegisterAfterRestore(AfterCheckpoint); } private ValueTask BeforeCheckpoint() { // Add logic to be executed before taking the snapshot return ValueTask.CompletedTask; } private ValueTask AfterCheckpoint() { // Add logic to be executed after restoring the snapshot return ValueTask.CompletedTask; } public APIGatewayProxyResponse FunctionHandler(APIGatewayProxyRequest request, ILambdaContext context) { // Add business logic return new APIGatewayProxyResponse { StatusCode = 200 }; } }
PrivacidadTérminos del sitioPreferencias de cookies
© 2025, Amazon Web Services, Inc o sus afiliados. Todos los derechos reservados.