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

209
Visualizações
Solución robusta para actualizar periódicamente un archivo de datos de referencia en un clúster de servidores Nginx que se ejecutan en instancias AWS EC2

Tengo un servicio web que se ejecuta en AWS que consta de un clúster de servidores Nginx que se ejecutan en varias instancias de EC2, con equilibrio de carga mediante un Elastic Load Balancer. Cada instancia de Nginx es idéntica y el servicio se basa en un único archivo de datos de referencia que contiene filas de datos basados en texto que se utilizan para generar la respuesta a las solicitudes POST entrantes al servicio web (el contenido del archivo se lee en la memoria al inicio) .

Este archivo de datos de referencia se genera mediante un proceso independiente, se actualiza cada 24 horas y está disponible en un depósito S3 designado. Estoy tratando de decidir cuál es la forma más sólida de obtener el archivo actualizado de S3 en las instancias EC2 y hacer que Nginx los lea nuevamente (hacer que Nginx los lea nuevamente es la parte fácil: solo necesito enviar el Nginx maestro procesar un SIGHUP).

Los dos requisitos principales de la solución son que:

  1. se ejecuta completamente en la nube (es decir, utilizando solo los servicios de AWS) ya que no hay hardware físico disponible.
  2. minimiza el impacto en la disponibilidad del servicio web, al programar la actualización/recarga en cada servidor para que ocurran de manera escalonada, en lugar de todos al mismo tiempo.

Las opciones que estoy considerando actualmente son:

  1. Tener un trabajo cron en cada instancia de EC2 que extraerá el archivo actualizado de S3 y hará que Nginx lo vuelva a cargar, una vez cada 24 horas (con un desplazamiento aleatorio para escalonar la actualización).
  2. Tener un AWS Lambda activado cuando el archivo se actualiza en S3, donde Lambda copia el archivo en las instancias EC2 en ejecución y hace que Nginx lo vuelva a cargar.

¿Es viable la opción (2)? es decir, ¿es posible escribir un Lambda que pueda identificar todas las instancias EC2 en ejecución para la cuenta actual que coincidan con un patrón de nombre de instancia? Y habiendo identificado las instancias de EC2, ¿es posible que Lambda copie el archivo de S3 a cada instancia de EC2? No tengo muy claro lo que eso implica.

Suponiendo que sea posible, ¿la opción (2) me da alguna ventaja real sobre la opción (1)? Estoy abierto a escuchar otras formas de hacer esto también.

over 4 years ago · Santiago Trujillo
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