Simplemente Ordena (Parte 2) —... Nota

Simplemente Ordena (Parte 2) — Diseñando e Implementando el Flujo de Trabajo Saga con Temporal

Esta lección se centra en la implementación de un flujo de trabajo Saga utilizando Temporal para el procesamiento de pedidos en Simply Order. El proceso de pedido involucra pasos como la creación, reserva de inventario, autorización de pago y finalización del pedido, todos rastreados a través de una máquina de estados. Se elige un patrón Saga de orquestación, utilizando Temporal por su capacidad para gestionar el estado del flujo de trabajo, manejar la comunicación y proporcionar confiabilidad. Los componentes principales de Temporal incluyen código de flujo de trabajo y actividad, trabajadores, un servidor, colas de tareas y un cliente. El código proporcionado define el flujo de trabajo, incorporando lógica de compensación para el manejo de errores. Las actividades, como la reserva de inventario, interactúan con servicios externos y son ejecutadas por los Trabajadores de Temporal. El ejemplo establece tiempos de espera y políticas de reintento para las actividades. El proyecto utiliza las anotaciones de Temporal para definir interfaces de flujo de trabajo y actividades, lo que permite al framework gestionarlas. También se establecen la dependencia del SDK de Temporal y las configuraciones para el cliente y el trabajador. La implementación separa la lógica de negocio de las preocupaciones de la infraestructura subyacente, simplificando el desarrollo.