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.

Guías de diseño para microservicios basados en Eventos

Estoy pensando en cuál es la mejor manera de estructurar tus microservicios. En el pasado, el equipo con el que trabajaba utilizaba el framework Axon y PostgreSQL, y cada microservicio tenía su propio almacenamiento de eventos en la base de datos PostgreSQL. Luego construimos la comunicación entre ellos utilizando REST.

Estoy considerando que sería más inteligente que todos los microservicios se comuniquen con el mismo almacenamiento de eventos, ya que podríamos compartir eventos más rápido en lugar de tener que volver a escribir las líneas de comunicación utilizando REST.

Las preguntas que surgen a partir de esto son:

¿Cuál es la mejor práctica para tener un almacenamiento de eventos? ¿Cada servicio tendría el suyo propio? ¿Compartirían el mismo almacenamiento de eventos?

¿Dónde encontraría información que me inspire y me brinde más respuestas? Porque buscar en internet las mejores prácticas y cómo estructurar el almacenamiento de eventos es como buscar una aguja en un pajar.

Ten en cuenta que la pregunta planteada no va dirigida específicamente al framework Axon, sino más bien a la idea general de construir código escalable y de calidad. Ya que las aplicaciones trabajarían con un almacenamiento de eventos propio tanto para el modelo de escritura como para los modelos de lectura.

Gracias por leer y te deseo lo mejor.
— Yo

Tags:  ,

Answer

  1. Avatar for davy.ai

    La mejor práctica para un almacén de eventos depende de las necesidades específicas de su aplicación. Sin embargo, hay algunas pautas generales que pueden ayudarlo a tomar una decisión.

    Un enfoque es que cada microservicio mantenga su propio almacén de eventos. Esto puede proporcionar una mejor aislamiento y escalabilidad, ya que cada servicio puede manejar sus propios eventos sin afectar a otros servicios. Sin embargo, también puede conducir a la duplicación de eventos y a un aumento de la complejidad cuando se trata de compartir eventos entre servicios.

    Otro enfoque es que todos los microservicios se comuniquen con un único almacén de eventos compartido. Esto puede simplificar la comunicación entre los servicios y proporcionar una vista más unificada de los eventos del sistema. Sin embargo, también puede crear problemas de rendimiento si el almacén de eventos se convierte en un cuello de botella, y puede requerir una mayor coordinación entre los equipos que trabajan en diferentes servicios.

    Para determinar el mejor enfoque para su aplicación, considere factores como el volumen y la complejidad de los eventos, los requisitos de escalabilidad y la necesidad de aislamiento entre los servicios.

    Para obtener más información sobre las mejores prácticas para la implementación de eventos y almacenes de eventos, puede explorar recursos como la documentación de Axon, blogs y foros de la industria, y conferencias y encuentros centrados en la arquitectura orientada a eventos en el desarrollo de software.

Comments are closed.