Distributed Software and System Architectures

Lecture 2

1. Distributed Architectures

  • Software Architecture
    • Logical organization of the collection of software components that make up a distributed application
  • System Architecture
    • Instantiation of a software architecture, i.e., physical placement of software components on computers

2. Architecture Style

  • Layered architectures
    • Pros
      • Division of task
      • Scalability
      • Transparency
      • Potability
    • Cons
      • e.g., layer 1 and layer 3 cannot talk directly
  • Object-based architectures
    • Pros
      • Independent components
      • Free to talk to anyone
  • Data-centered architectures
    • e.g., google docs
  • Event-based architectures
    • e.g., facebook

3. System Architecture

  • Centralized architecture
    • client-server applications
  • Decentralized architecture
    • Peer-to-peer applications
  • Hybrid architecture

Leave a Reply