My project has one backend service (Web API) and one application for the external interface. The backend service has presentations, applications, domain levels and infrastructures located in different .net assemblies. The domain level has business domain objects, infrastructure - communication with external data and other materials, applications - a set of services used by the presentation layer, presentation - Web API controllers. I think this is a very common layered architecture.
Our new architect announced that we are going to move the backend to a microservice architecture that slows down our layers and divides the domain, application and infrastructure domains into several services and transforms the presentation layer into a backend for the external interface (as here ). In function, we will have a mobile application. The Sql Server database will be leaving as it is now.
I have no experience with microservice architecture, so my questions are: Already a multi-level architecture? What benefits and challenges can such an architecture design bring to my application?
source
share