vision of a microservice revolution
TRANSCRIPT
Vision of a microservice
revolution
The Jolie Team
How microsevices were born
Microservices emerged from the need to fragment existing software monoliths into different parts that can be scaled and replicated independently. It is a disruptive force in the way that software components are made and linked to each other.
Two roads to microservices
Programming: from the point of view of programming, the challenge is to find new languages that capture the essence of microservices and allow us to compose them easily.
Language is the keyword.
We say that this road follows the linguistic paradigm.
Systems: from the point of view of systems, microservices are independent applications able to serve different requests. They are deployed within artifacts called containers.
Container is the keyword.
We say that this road follows the deployment paradigm.
Deployment paradigm
vs
Linguistic paradigm
The linguistic paradigm is based upon the unification of
microservices foundations into a unique linguistic artifact. It is
based on the idea that:
it does not matter how a microservice is deployed, the most important thing is that every single programmable unit is a microservice.The deployment paradigm, based on containers, starts from the idea that:
it does not matter how a microservice is developed, the most important thing is that it is deployed in a container that can be easily moved, replaced, and scaled.
Software production chain
DESIGN
Deployment Paradigm
Linguistic Paradigm
DEVELOPMENT
PACKAGING
DEPLOYMENT
The designer thinks in microservices
The designer thinks inmicroservices
The developer programs with a known paradigm (object-oriented, functional, etc.)The developer programsdirectly in a nativemicroservice languageThe developer transforms a not microservice artifact into a microservice using an additionallayer (frameworks, etc.)The developer deploys the microservice (usually in a container)The developer deploys the microservice (usually in a container)
(not necessary)
The boundaries of a microservice
Deployment paradigm
Linguistic paradigm
A microservice can always be the composition of other microservices
A microservice is a packaged artifact from a specific set of technologies (Java, Erlang, Javascript, etc.)
Microservices are atomic
Inside a microservice, there can always be other microservices
The Architecture
Deployment paradigm
Linguistic paradigm
A microservice architecture is a network of containersA microservice architecture is a composition of microservices
The Architecture
Deployment paradigm
Linguistic paradigm
A microservice can be easily moved from inside to outside of a container (and vice versa)
In order to bring an internal component out of a microservice, a specific programming task must be carried out
X
Containers
Deployment paradigm
Linguistic paradigm
The container is a deployment facility
The container is the key element of the architecture
Advantages
Deployment paradigm
Linguistic paradigm
Technology agnosticismArchitectures can be easily changed by re-composing servicesEasy, scalable deploymentThinking in microservices translates directly to software (native programming)Compatible with CloudComputing stackCompatible with the deployment paradigm
The microservice revolution
Linguistic paradigm
A revolution in the making: the combination of these approaches.
Deployment paradigm
The Jolie Team
Jolie
We are pioneering the linguistic paradigm with Jolie.Keep in touch!