Events
Este documento detalla los mecanismos de mensajería de colas utilizados en el worker op-restocking-evaluator.
Visión General
Section titled “Visión General”El worker op-restocking-evaluator utiliza AWS Simple Queue Service (SQS) para recibir mensajes que desencadenan evaluaciones de reabastecimiento. El worker procesa estos mensajes, evalúa las necesidades de reabastecimiento basándose en los niveles de inventario y la demanda, y crea o actualiza alertas de reabastecimiento según sea necesario.
Cola de Evaluación de Reabastecimiento
Section titled “Cola de Evaluación de Reabastecimiento”URL de la Cola: Configurada mediante la variable de entorno QUEUE_EVALUATOR_URL
Propósito: Recibir mensajes que desencadenan evaluaciones de reabastecimiento para productos específicos en almacenes específicos.
Consumidores:
- El RestockingEvaluatorWorker procesa mensajes de esta cola
Formato del Mensaje:
export interface EventMessage<T, D> { type: T data: D context: { country: string warehouse: string }}
export type OutputTransactionEvent = EventMessage< 'OutputTransaction', Array<{ productEan: string }>>Procesamiento:
- El worker recibe hasta 10 mensajes a la vez de la cola
- Cada mensaje es validado para asegurar que tiene el tipo de evento correcto
- Para cada mensaje válido, el worker extrae el EAN del producto, el almacén y el país
- El worker procesa el mensaje evaluando las necesidades de reabastecimiento
- Después de un procesamiento exitoso, el mensaje es eliminado de la cola
- Si el procesamiento falla con un error no recuperable, el mensaje es eliminado
- Si el procesamiento falla con un error recuperable, el mensaje permanece en la cola y será reintentado
Manejo de Errores:
- Los mensajes con tipos de evento inválidos son registrados y eliminados
- Los mensajes para productos con demanda cero son registrados y eliminados
- Los mensajes para productos que no requieren reabastecimiento son registrados y eliminados
- Otros errores son registrados y el mensaje permanece en la cola para reintento