Architecture Flashcards
Microservice
No precise definition :
service that delivers one business function more or less independently from others, can be coded, deployed, used, scaled, upgraded independently instead of a monolithic application
Inconvenient of microservices
Network latency and message processing for inter-service calls over the network as opposed to monolithic
SOA
Service-oriented architecture
SoA vs micro-services
The difference is scope: SOA for enterprise-wide and micro-services for applications.
The 2 are compatible.
1- Re-use: SOA wants it for efficiency but m-s may prefer code duplication for agility for decoupling
2- Synchronous calls: SOA wants them but m-s prefer asynch (like event push) for decoupling
3- Data duplication: SOA wants all app to go update data at its primary source, m-s all have the data they need to be independent, even if duplicated
Event broker
MDW between event generator and consumer on publish-subscribe model
EDA
Event-Driven Architecture
Resource contention
Conflict over access to a shared resource like memory, buses, devices.
How to solve resource contention (4)
Locks, semaphores, queues, scheduling, etc.