Andras Gerlits
2 min readMar 11, 2024

--

You didn't offend me, don't worry. We are just working on better demos and monitoring. The answer is yes, you can both stream changes and turn them into a master-master platform with the same solution. Think of it this way: your microservices work on a database and talk through some messaging solution, like Kafka. They need to communicate changes with each other, so they send messages to others that subscribers pick up. In these cases, the message has some structured information they send between each other. You pick up this information on different services, do some transformation and save it locally. We can already improve on this sure, but this is only half of it.

This messaging is a means to an end. The reason you do this is because you want both services to end up agreeing about what happened to the entity the message is talking about. These changes mean different things on different services, but they are the same changes or they couldn't have been communicated via the information in the message. So yes, if you like, we can just automate and make your messaging go away and be replaced by a safer method of delivery, by directly relaying events between database tables and from then on you can just use these events in a local transaction which does what it did before. In this case you gain transactionality and simplification. But you can take this a step further and identify the data being shared between different services and establish those as a shared table between them. You can establish multiple such collections of tables and subscribe to any number of them and from that point on you don't even have to think about communication. You just read and write information you need and it's automatically federated for you.

I get that we need to communicate better about this. Thanks for the questions

--

--

Andras Gerlits
Andras Gerlits

Written by Andras Gerlits

Writing about distributed consistency. Also founded a company called omniledger.io that helps others with distributed consistency.

No responses yet