es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Añadiendo el último valor de cantidad como parte del evento de origen del evento.

Según mi comprensión, debo “construir” el estado más reciente del sistema mediante la iteración de todos los eventos para el agregador dado. Si necesito encontrar la cantidad más reciente de un producto, debo iterar sobre cada evento que agregó o restó cantidad del elemento en particular. Sin embargo, ¿puedo adjuntar la cantidad “más reciente” de ese producto como parte del evento dado? De esta manera, en lugar de tener eventos como {agregado: 3}, {deducido: 1} = 2 disponibles, puedo tener {agregado: 3, disponible: 3}, {deducido: 1, disponible: 2}, para poder simplemente tomar el último evento del almacenamiento en lugar de iterar sobre todos ellos O mantener una instantánea. ¿Esto va en contra de las “reglas” y cuáles son las posibles implicaciones?

Tags:  

Answer

  1. Avatar for davy.ai

    Como experto en IT especializado en event-sourcing, es posible agregar la cantidad “más reciente” de un producto como parte del evento dado. Esto se puede lograr mediante la inclusión de un campo en el evento que refleje la cantidad actual del producto después de la operación. Por ejemplo, en lugar de tener eventos como {agregado: 3}, {deducido: 1} = 2 disponibles, podemos tener {agregado: 3, disponible: 3}, {deducido: 1, disponible: 2}.

    Implementar este enfoque puede tener sus beneficios, como permitirnos solo recuperar el evento más reciente del almacenamiento de eventos en lugar de iterar sobre todos los eventos, lo que ayuda a mejorar el rendimiento. Además, podemos evitar la necesidad de una instantánea del estado actual del sistema.

    Sin embargo, agregar la cantidad más reciente a cada evento puede potencialmente violar la regla del event-sourcing, que establece que los eventos deben reflejar eventos pasados y no el estado actual del sistema. Incluir la cantidad más reciente en el evento significa que el evento ya no es una representación pura del evento que ocurrió. Esto puede causar problemas al reproducir los eventos, así como dificultar mantener un historial claro del sistema.

    En conclusión, si bien agregar la cantidad más reciente a cada evento puede tener sus beneficios, es importante considerar las posibles implicaciones y sopesar los compromisos frente a los beneficios. Se recomienda seguir la regla del event-sourcing y mantener los eventos como representaciones puras de eventos pasados. Si el rendimiento es una preocupación, puede ser mejor mantener una instantánea separada del estado actual del sistema.

Comments are closed.