¿Ya tienes una cuenta? Inicia sesión
La idea fundamental de Event Sourcing es garantizar que cada cambio en el estado de una aplicación se capture en un objeto de evento, y que estos objetos de evento se almacenen en la secuencia en que se aplicaron durante el mismo tiempo de vida que el estado de la aplicación.
Podemos utilizar Event Sourcing para varias cosas:
Regenerar los datos de nuestra aplicación en caso de pérdida de datos a partir de eventos.
Generar informes a demanda en base a todo lo que ha sucedido en nuestra aplicación.
Ajustar automáticamente el estado de nuestra aplicación para hacer frente a cambios retroactivos.
Los eventos son cosas que suceden en nuestra aplicación, ProductAdded, CitizenCreated, ProductIncremented etcétera. Nos sirven para todo, y son los encargados de ejecutar a los proyectores. Dentro de Event Sourcing estos eventos deben ser persistentes, en nuestro caso los guardaremos en base de datos.
Los proyectores son ejecutados por los eventos que han sucedido en nuestra aplicación. Por ejemplo, podríamos tener el proyector CitizenProject, el cual estará atento al evento CitizenCreated. De esta forma, cuando un ciudadano sea creado en nuestra aplicación, podremos utilizar este evento para hacer persistente su estado en base de datos.
Su uso no es requerido. Es posible desarrollar una aplicación completa sin el uso de agregados, pero son realmente potentes. Su principal característica es que nos permiten tomar decisiones basadas en cosas que ya pasaron, pedidos, balance o lo que necesitemos.
Al igual que los proyectores, los reactores reaccionan a Eventos. Son un mecanismo súper poderoso para realizar tareas asíncronas: envío de correos, por ejemplo. Imagina que tienes una aplicación que no permite registrar más de 10 movimientos, un reactor podría estar atento a este comportamiento y, cuando se produzca, ejecutar la lógica necesaria, por ejemplo enviar un correo electrónico a administración.
Si deseas aprender a utilizar Event Sourcing en Laravel, no te pierdas este curso, estoy seguro que aprenderás cosas que te ayudarán a mejorar en tu día a día como desarrollador.
Los planes de suscripción trimestral y anual incluyen soporte a través del foro del curso.
Las dudas que se planteen en el foro del curso serán respondidas en un plazo máximo de 24 horas laborables.
Las dudas planteadas deben estar relacionadas con el contenido del curso y no con desarrollos personalizados que no estén relacionados con el curso.
Especialista con +14 años de experiencia en desarrollo web Full Stack. Dominio avanzado en Laravel y Vue.js, creando aplicaciones modernas de alto rendimiento. Instructor profesional con 8 años compartiendo conocimiento a través de cursos especializados que han formado a cientos de desarrolladores.
Desarrollador Full Stack & Formador
3 valoraciones
Me ha parecido una excelente herramienta para crear reportes avanzados, muchas gracias.
Cursosdesarrolloweb es una plataforma educativa con cursos y tutoriales en texto y vídeo.
Términos y condiciones Política de privacidad Términos y condiciones para afiliados Formulario de contacto
Copyright 2025 © Todos los derechos reservados.
Utilizamos cookies para mejorar tu experiencia.