En informatique, les microservices sont des services logiciels. L’architecture en microservices est une variante du style architectural orienté services (SOA), qui structure une application comme un ensemble de services faiblement couplés. Les microservices, indépendants les uns des autres, communiquent entre eux à l’aide d’API indépendantes du langage de programmation.
Les API REST sont souvent utilisées pour relier les microservices entre eux. L’un des avantages majeurs de cette architecture est que, lorsqu’une mise à jour critique d’une ressource est nécessaire, seul le microservice concerné est modifié. L’ensemble de l’application reste compatible avec ce changement, contrairement aux architectures classiques, comme l’architecture trois tiers, où une modification peut nécessiter la mise à jour de l’ensemble de l’application. Cependant, le coût de mise en œuvre peut être plus élevé en raison des compétences techniques requises.
Le terme microservice est apparu en 2011 au cours d'ateliers d'architecture, bien qu'il réutilise un grand nombre de principes largement employé par les systèmes d'information des grandes entreprises, notamment les concepts de l'architecture orientée service (SOA).
Le sujet est réellement évoqué à partir de 2014 selon Google Trends. Parmi les pionniers, Netflix a notamment œuvré à populariser ces architectures,.
La philosophie de l'architecture microservices s'inspire en grande partie de la philosophie d'Unix, qui prône « ne faire qu'une seule chose, et la faire bien ». Elle est décrite comme suit,, :