Comment by bergkvist

3 years ago

No amount of abstraction is going to save you from the problem of 2 processes manipulating the same state machine.

In this example, it's the job of the "database access layer service" to manage those processes and prevent issues.

But, terrible service name aside, this is a big reason why two services accessing the same database is a capital-H Huge anti-pattern, and really screams "using this project to learn how to do microservices."