In a nutshell, a microservice architecture is a way of designing software applications. The easiest way to understand how it works, is to compare it to the monolithic approach.
Whereas a monolithic software structure is a single unit, a microservice structure is a suite of independent modular services – services meaning components, or units of software, communicating via remote web requests. In a monolithic structure all changes are interlinked, while in a microservice system, modifications can be made without affecting the whole.
In a microservice structure it is easy to isolate faults. If one service fails, the others will continue to function. In a monolithic system, an error could jeopardise the entire system.
An added advantage is that microservices can be developed by a small team. This does not, however, mean that all services are micro in size. A well-known example is Amazon, where a large number of applications of varying sizes feed into the same platform.
The electronic tools developed by UNCTAD to help governments promote business, investment and trade are based on a microservice style of architecture. Applications are developed and adapted to local needs. Take, for instance, the UNCTAD eRegistration tool installed in 5 countries (Argentina, Benin, Cameroon, El Salvador and Guatemala). For it to act as a single electronic window in each country, the system has been adjusted to the number of computerized procedures the government requires to create or register a company, sign up with the tax office, acquire an export licence, etc..