Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

454
Visualizações
Alcance de las variables globales de Python en AWS Lambda

¿Cuál es el alcance o la vida útil de una variable global en AWS Lambda?

por ejemplo si hago algo como esto:

 cache = {} def lambda_handler(event, context): # do something with "cache" # do something else with "cache"

¿Se inicializará la cache una vez por invocación (proceso nuevo para cada ejecución de Lambda) o una vez que se inicialice este módulo, se reutilizará para múltiples invocaciones?

over 4 years ago · Santiago Trujillo
2 Respostas
Responde à pergunta

0

Las variables globales conservan su valor entre invocaciones en el mismo entorno de ejecución.

Las bibliotecas deben definirse en el código de inicialización fuera del controlador, de modo que se carguen una vez cuando se crea el entorno de ejecución.

fuente aws

 import boto3, json client = boto3.resource('dynamodb', region_name='eu-west-1') tbl = client.Table('my-dynamo-table') mydata = {} mydata["groups"] = [] def lambda_handler(event, context): if len(mydata["groups"]) == 0: # data is not cached, make call to dynamo data = tbl.scan() group_data = data['Items'] for group in group_data: mydata["groups"].append(group['name']) return mydata else: # return cached content return mydata

Aproveche la reutilización del entorno de ejecución para mejorar el rendimiento de su función. Inicialice los clientes del SDK y las conexiones de la base de datos fuera del controlador de funciones y almacene en caché los activos estáticos localmente en el directorio /tmp. Las invocaciones posteriores procesadas por la misma instancia de su función pueden reutilizar estos recursos. Esto ahorra costos al reducir el tiempo de ejecución de la función.

aws

over 4 years ago · Santiago Trujillo Relatório

0

Las variables globales de Lambda no se actualizan con cada invocación. Lo que escriba dentro de la función del controlador se invocará con cada invocación.

Al llegar a la vida útil de las Variables globales, permanece mientras el contenedor inicializado permanezca activo (cierra el contenedor si permanece inactivo durante cierto período de tiempo) o el código se modifica y se vuelve a implementar. Debemos tener cuidado con lo que estamos poniendo como caché, es decir, si los datos almacenados en caché se actualizan con frecuencia, no es una buena idea almacenarlos en caché.

https://docs.aws.amazon.com/lambda/latest/dg/runtimes-context.html

https://medium.com/tensult/aws-lambda-function-issues-with-global-variables-eb5785d4b876

over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda