-
SOA (Service-Oriented Architecture)
Components (services) are designed to perform specific tasks and communicate over a network, enabling reusability and flexibility.
-
REST (Representational State Transfer)
- Architectural style for distributed systems using HTTP.
- In theory, REST services expose just the data and the data structures (uniquely identified) and allow simple operation over these structures (GET, PUT, POST, DELETE).
-
Microservices
Small, focused components communicating over lightweight protocols (e.g., REST).
-
Broker
- Mediator for component communication, managing requests and responses.
- We know everything we want to do, but we do not know who can do it and how we can contact them.
-
Peer-to-Peer
- (P2P): Direct communication and resource sharing among all components (peers).
- The data is not centralized, but everyone can have all the data.
-
Master-Slave
The master component delegates tasks to slave components, improving performance. We have a large task, which can be divided and shared.
-
Multitier
Organization of components into tiers, each with specific functionality.
-
Client-Server
Central server providing services to one or more clients.
-
Event-Bus
Components communicate via events, promoting loose coupling.
-
Blackboard
Collaborative problem-solving using a shared knowledge base (blackboard).
-
MVC (Model-View-Controller):
- Separation of application logic, UI, and data management.
- –Model layer: responsible for data.
- –View layer: responsible for the representation.
- –Controller layer: responsible for the logic.
-
Layered
Hierarchical organization of components by responsibility.
-
Pipe-Filter
Sequential data processing with components (filters) connected by pipes.
-
Monolithic:
Single unit combining all components, less flexible and harder to maintain.
|
|