▪ In monolithic applications can’t be duplicate and not be any data consistency problems, strict database transaction management.
▪ Microservices architecture, we have to welcome duplicate datas and eventual consistency.
▪ How we can welcome duplication and un-consistent data ?
▪ Accept eventual consistency data in microservices where it is possible.
▪ Define our consistency requirements before design the system.
▪ If need to strong consistency and ACID transactions, we should follow traditional approaches.
▪ Use event driven architecture: microservices publish an event when any changes happened on data model.
▪ Subscriber microservices consume and process event afterwards in eventual consistency model.
▪ Polyglot Persistence gives us scale independently and avoid sigle-point-of-failure of bottleneck databases.