light-weight, independent processes that form collectively complex application solutions
these processes communicate with each other through language agnostic APIs
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q
What are guidelines for refactoring a monolith into a microservice?
A
complex monolith appliaction? Start carvin out services from the monolith, implementing desired functionalities for the taken out code, over time all or most functionalities will be implemented in the microservices architecture (like Strangler Fig Pattern)
split monolith based on business logic, front-end, data access; event-driven communication between services
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q
What are benefits of the Microservice architecture? (8)
A
no language or technology lock-in, because each services works independently, only API needs to return expected output
each service can be deployed and managed seperately
each service can be updated or scaled independently
if one service failes, it does not bring down the whole application
once code of a service is written, it can be reused in other projects, where similiar functionality is needed
enables continious delivery
work well with container orchestration tools like kubernetes
components can be deployed across multiple servers or even data centers
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q
What are Challanges/Drawbacks of Microservices?
A
choosing right service size
deployment (needs to use distributed environment)
testing (with lots of services and interdependencies can be complex)
inter-service communication (can be costly if not done correctly)
managing databases
monitoring and logging (addressed by specialized tools like elastic)