Now that we have our project skeleton, let's recall the project requirements for the stream processing engine. Remember that our event customer consults ETH price occurs outside Monedero and that these messages may not be well formed, that is, they may have defects. The first step in our pipeline is to validate that the input events have the correct data and the correct structure. Our project will be called ProcessingEngine.
The ProcessingEngine specification shall create a pipeline application that does the following:
- Reads each message from a Kafka topic called input-messages
- Validates each message, sending any invalid event to a specific Kafka topic called invalid-messages
- Writes the correct messages in a Kafka topic called valid-messages
These steps are detailed in Figure 2.1, the first sketch for the pipeline processing engine:
Figure 2.1: The processing...