Notes - MIECT
Computação Distribuída
Notes - MIECT
Computação Distribuída
  • Computação Distribuída
  • Introduction / Architecture
    • Distributed Systems
    • Architecture
    • Middleware Organizations
    • Processes
    • Threads
    • Virtualization
    • Clients
    • Servers
    • Migration
  • Communications
    • OSI Model
    • Middleware Layer
    • Types of Communication
    • Remote Call Procedure (RPC)
    • Sockets
    • Application-level Multicasting
  • Naming
    • Names
    • Addresses
    • Identifiers
    • Naming Systems
      • Flat Naming
      • Structured Naming
    • Internet Domain Name System (DNS)
    • Attribute-based naming - LDAP
  • Coordination
    • Clocks
      • Synchronizing without UTC
    • Reference Broadcast Synchronization – RBS
    • Happened-Before Relation
      • Logical Clocks
      • Vector Clocks
    • Mutual Exclusion Algorithms
    • Election Algorithms
    • Distributed Events Correspondance
  • Consistency & Replication
    • Replication
    • Performance and Scalability
    • Client-centric models
    • Replicates
    • Unicasting vs. Multicasting
    • Continuous Consistency
    • Protocols
  • Flaw Tolerance
    • Dependability
    • Terminology
    • Confidence vs. Security
    • Halting failures
    • Redundancy to mask failures
    • Consensus
      • Realistic
      • Consensus in arbitrary failures
      • Achieving failure tolerance
      • Distributed consensus
    • Failure Detection
    • Reliable RPCs
    • Distributed commit protocols
  • Python asyncio & Friends
    • Async
    • Sync vs. Async
    • Tools
  • Flask
    • Introduction
    • Python Requests
  • Containers
    • VM's vs Containers
    • OS Support
    • Building a container
    • Tools
    • Portability
    • Docker
      • Container
  • Map Reduce
    • Map Recude
    • Hadoop
    • Software Architecture
    • Task Scheduling
    • Comparison With Traditional Models
  • Cloud Computing
    • Cloud Computing
    • IaaS – Infrastructure as a Service
    • PaaS – Platform as a Service
    • SaaS – Software as a Service
    • Business Models
Powered by GitBook
On this page
  • Definition
  • Characteristics
  • Middleware
  • Objective
  • Transparent Distribution
  • Openness
  • Scalability
  • Pitfalls
  1. Introduction / Architecture

Distributed Systems

PreviousComputação DistribuídaNextArchitecture

Last updated 2 years ago

Definition

Systems where software and hardware components, placed in a network, communicate and coordinate their actions by passing messages.

DS Coulouris

A set of independent computers that are presented to the user as a single integrated system. DS Tanembaum

Characteristics

Collection of autonomous computing elements.

  • Global clocks.

  • Membership management.

    • Open.

    • Close.

Single coerent system.

Middleware

Available services:

  • Communication (eg. RPC).

  • Transactions.

  • Service composition.

  • Reliability.

Objective

  • Support of resource sharing.

  • Transparent distribution (application and user)

  • Openness.

  • Scalability.

Transparent Distribution

Transparancy
Description

Access

Hides the differences in data representation and in the method of access.

Localization

Hides where an object is located

Relocation

Hides the fact that an object can be moved to another location while in use.

Migration

Hides the fact that an object can be moved to another location.

Replication

Hides the fact that an object can be replicated

Concurrency

Hides the fact that an object can be shared between concurrent users.

Flaws

Hides the flaws in recoveries of an object.

Openness

"Being open".

Using components that can be used, or integrated, into other systems.

Interoperability.

Composition.

Extensibility.

Scalability

Dimension

  • Size.

  • Geographic.

  • Administrative.

Vertical vs. Horizontal

Pitfalls

The Network is reliable

The Network is secure

The Network is homogenous

The topology is inmutable

Zero latency

Infinit bandwith

No cost of transport

There is a single administrator