Architecture Flashcards
To learn more about and retain architectures I have encountered in my career
What is a distributed monolith architecture?
It is an anti-pattern in which a monolith is separated into multiple services that are highly dependent and do not adopt the best practices of miscroservices architecture.
What is a cell based architecture?
Multiple isolated and independent instances of a workload, called a cell, handling a subset of the overall workload.
What are the layers of a cell based architecture?
Cell router, Cell, and Control plane
What is a microservice based architecture?
A collection of small autonomous services that work together that are bounded by context, autonomously developed, independently deployable, decentralized and built and released with automated processes.
What kind of architecture is diagrammed in the attached image?
Cell based architecture
What is an example of a distributed monolith architecture?
Any instance in which two or more services cannot be deployed in isolation. One cannot be changed without the other also being changed.
What is an ETL pipeline?
A series of processes in which data is extracted from one or more sources, transformed - usually into a standardized format - and then loaded into a target repository, usually a database or data warehouse.
What is the purpose of cell based architecture?
Cell based architecture is aimed at predictable scaling and limiting impact of failures.
What is an example of a cell based architecture?
When the entire production environment is replicated. Or a logical subset.
How does a cell based architecture reduce the impact of failures?
By isolating failures to a single cell and avoiding single points of failure.
How does cell based architecture allow for predicable scaling?
By capping each cell to a fixed maximum size.
What does SOLID stand for?
SOLID stands for:
S - Single-responsibility Principle
O - Open-closed Principle
L - Liskov Substitution Principle
I - Interface Segregation Principle
D - Dependency Inversion Principle
What does single responsibility mean?
A class should have one and only one reason to change, meaning that a class should have only one job.
What is the open closed principle?
Objects or entities should be open for extension but closed for modification.
What is the liskov substitution principle?
Let q(x) be a property provable about objects of x of type T. Then q(y) should be provable for objects y of type S where S is a subtype of T.
This means that every subclass or derived class should be substitutable for their base or parent class.
What is interface segregation?
A client should never be forced to implement an interface that it doesn’t use, or clients shouldn’t be forced to depend on methods they do not use.