Kafka Streams — How to flexibly connect micro services with Kafka data streams

A practice example on how to materialize Kafka topic into local data store using sink connector

Gavin F.
9 min readOct 23, 2023

--

Photo by Tyler Nix on Unsplash

Kafka has brought revolutionary changes and new possibilities in the system architecture design. Serving as the data source is one of the awesome features of Kafka. Kafka stores historical events in the data flow for microservices to consume and run system logic.

Imagine that a microservice needs account balance in order to evaluate the customer’s loan request. If the customer has enough balance for loan repayment, then the loan request will be approved or otherwise rejected.

In the system architecture of data streams, account balances are produced and outputted to data streams based on transactions. How can the microservice get the account balances for loan evaluation?

Loan Evaluation Service Integration with account balances topic

You may think of the solution for the microservice to directly consume the account balances Kafka topic. Then, the microservice is triggered whenever a new account balance is calculated. It could delay the loan request evaluation because you need…

--

--

Gavin F.
Gavin F.

Written by Gavin F.

Decades experience in software development. Building software and researching technologies are my full-blown obsession.