diff --git a/docs/consumer_architecture.md b/docs/consumer_architecture.md new file mode 100644 index 0000000..089d60d --- /dev/null +++ b/docs/consumer_architecture.md @@ -0,0 +1,2 @@ +The current consumer architecture of Ene kafka is as follows: +![Architecture](../md_assets/architecture.svg) \ No newline at end of file diff --git a/md_assets/architecture.svg b/md_assets/architecture.svg new file mode 100644 index 0000000..996b46a --- /dev/null +++ b/md_assets/architecture.svg @@ -0,0 +1,4 @@ + + + +
in case of failure, produces the failed event to the DLQ
in case of failure, produces the failed event to the DLQ
Consumer
Consumer
Dispatcher fails when no handler 
can handle the incoming event, 
or when the handler fails to handle the event
Dispatcher fails when no handler...
Event dispatcher
Event dispatcher
Handler
Handler
Business Logic
Business Logic
consumes events from topic
and sends them to the event dispatcher
consumes events from topic...
based on the event type, 
the dispatcher tried to find the appropriate handler
based on the event type,...
DLQ Producer
DLQ Producer
Handler fails when it cannot
deserialize the event, or when 
something goes wrong 
during the execution of the business logic
Handler fails when it cannot...
The handler will deserialize the event,
 and execute the (business) logic
 needed for that event to be handled
The handler will deserialize the eve...
Business logic fails when it cannot
handle the event for whatever reason
Business logic fails when it cannot...
\ No newline at end of file