The best way to read events for EDA

Hello.

I’m trying to find a way for an optimal realization of Event-Driven Architecture (EDA), where Corteza must be integrated with external services (for example, Analytics), here I imply that events have to be sent to an external message broker, for example, RabbitMQ or Kaffka - in order to be processed by an event consumer.

I found 2 possible ways:

  1. Edit workflows I’m interested in, in order to send something from them
  2. Using the eventbus, to intercept messages and send them somewhere (not exactly sure how it works)

Could you, please, share your opinion about the matter?

Thanks in advance!

You could define a series of workflows to push data to your message broker and a series of integration gateways to receive messages from the message broker (you’d also need some special workflow processing there).

This is the rough idea of how I would tackle it; if you’ll be handling larger datasets/evet counts you might need to implement some batching to not overburden Corteza/the message broker.

2 Likes

Thank you, Tomaž.
I was thinking about a similar approach. It’s also better in terms of pre-processing messages vs sending raw.

2 Likes

hey @sashker, could you update us about the solution that worked for you? thanks