proyecto en DevOps Skill Tree

Completa trabajos en segundo plano tras el fallo de un worker Proyecto

Recupera trabajos reales de RabbitMQ tras una interrupción y usa transacciones SQLite para repetirlos con seguridad.

DevOpsPython

💡 Este tutorial está traducido por IA desde la versión en inglés. Para ver la versión original, puedes hacer clic aquí

Introducción

Completa trabajos en segundo plano tras el fallo de un worker es un proyecto práctico de DevOps para quienes pueden leer una función pequeña de Python. Ayuda a Nightjar Print Studio a convertir inscripciones reales en entradas utilizables y descargables, incluso si el worker se detiene entre recibir un mensaje, confirmar los cambios y reconocer la entrega.

Un laboratorio guiado enseña el recorrido normal del cliente, el momento del reconocimiento y la idempotencia transaccional. Un desafío independiente combina una cola pendiente, entregas repetidas, nombres iguales y una entrada existente que debes conservar. Cada unidad comienza en su propio entorno preparado.

Lo que aprenderás

  • Seguir una inscripción real a través de RabbitMQ hasta su página de entrada y descarga.
  • Reconocer después de confirmar la transacción para permitir la reentrega del trabajo interrumpido.
  • Guardar la clave de finalización por ID y la entrada en una sola transacción SQLite.
  • Distinguir entregas duplicadas de inscripciones diferentes con el mismo nombre.
  • Reproducir ventanas de interrupción y reparar duplicados de forma explícita sin reiniciar los demás invitados.

A quién va dirigido este curso

Este proyecto intermedio está pensado para estudiantes de DevOps y desarrolladores que exploran la fiabilidad del trabajo en segundo plano. Necesitas manejo básico del terminal y poder leer funciones, sangría y accesos a diccionarios de Python. Un breve puente repasa estos elementos e introduce el SQL y las transacciones usados aquí.

RabbitMQ, Python, SQLite y el sitio completo de Nightjar están preparados en el navegador. Solo modificas un pequeño manejador; no desarrollas el sitio ni instalas servicios. Los documentos están en nueve idiomas; el sitio, las etiquetas y la salida de comandos siguen en inglés.

Preguntas frecuentes

¿Necesito una cuenta externa o instalación local?

No. Todo utiliza servicios de práctica preparados e invitados ficticios. No hay pagos, correos ni entregas externas.

¿Garantiza un procesamiento exactamente una vez?

No. RabbitMQ puede volver a entregar. La transacción hace segura la repetición de un ID para el resultado de la entrada en esta base SQLite. El correo, los pagos, los fallos del broker y la alta disponibilidad de producción requieren otro diseño.

¿Qué ocurre si genero entradas duplicadas al aprender?

El laboratorio enseña una vista previa y una reparación explícita por ID que conserva la entrada original más antigua y a los demás invitados. La evaluación nunca repara ni consume el trabajo real: lee resultados y prueba tu manejador en destinos desechables aislados.

Profesor

labby
Labby
Labby is the LabEx teacher.