This means, a microservice handles one functional task, such as the management of a booklist, completely end-to-end: It exposes a RESTful API, it stores, retrieves, manipulates and returns the data.
The better – and recommended – approach to microservices is to create functional domains. But this approach is misleading, since it does not help in deployment- or update-scenarios, since the technical layer is usually used by multiple other services, thus creating a strong dependency between them. Traditionally, applications are divided into technical components – and switching to a microservices world therefore appears to be straight-forward: Just wrap the technical components (such as a database layer) into microservices, and off you go.
This principle is the most important one, since it depicts a change in how to think of components of an application. But, to earn this name, a microservice needs to comply to some principles: A microservice is a functional domain What is a microservice?įirst of all: A microservice is still a program. In this article, we will look into how to write a microservice, package it and deploy it onto a Kubernetes cluster – but before doing this, we should make ourselves understand, what microservices are and in which way they differ from traditional approaches to software development. they are understood as one of the foundations of a cloud-native solution, since they allow for faster development, technology abstraction and ease of deployment.