Skip to content

Microservices

An architecture of bounded services intended to evolve, operate and deploy as independently as practical.

Software architecture

Independent services with clear ownership

A microservices architecture divides an application into business-focused services with defined interfaces. They should be able to evolve and deploy independently. This includes clear ownership of their respective data and access to it.

In a fictional example, report generation gets its own release while the job application supplies data through an agreed interface. This requires version agreements and defined behaviour when connectivity fails. Separate processes that must be released together for every change have not achieved this independence. Assess monitoring, error handling and data consistency alongside freedom to change. Many small services alone guarantee neither sound structure nor higher availability.

Sources