Microservices
An architecture of bounded services intended to evolve, operate and deploy as independently as practical.
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
Related terms
- Software architectureFundamental decisions about a software system’s structure, interactions and quality goals.
- MonolithAn application whose core is deployed as one unit; clear internal modules are still possible.
- Modular monolithAn application deployed together with explicitly bounded internal modules and interfaces.
- Contract testA test of agreed messages between a consumer and a provider at an application interface.
- Cache stampedeA cache stampede occurs when concurrent cache misses trigger the same expensive calculation or data query repeatedly.
- BackpressureBackpressure adjusts incoming data to the receiver’s processing capacity through signals to slow down or pause.
Your project with ASES
Describe your project to us. We will get back to you with an initial assessment.