Microservices are software applications in which the application software is composed of small, independent software components. It is a special architecture model in which a single application consists of many small microservices.
Each microservice forms its own process, may be written in its own programming language, communicates through simple, language-independent interfaces, and uses different storage technologies. Each process performs a single task.
In contrast, classic services form a closed monolithic unit written in a programming language. Corresponding enterprise applications consist of the client-side user interface, which can be HTML pages of a browser, the database with the database management, and the server-side application via which the HTTP requests and their execution take place.
The advantage of microservices is that they are very clear, because they are small and are programmed for one task. Further development is possible directly. They are therefore hardly error-prone and can be replaced by new implementations at any time. In addition, the individual microservices can be easily scaled and secured against failure. Microservices are used, for example, in the composition of several small cloud services into one cloud service by means of NativeCloud Application( NCA).