Professional Documents
Culture Documents
Problems of Distribution
Concurrency, Security
clients must not disturb each other
Privacy
unwanted communication such as spam
Partial failure
we often do not know where the error is (e.g., RPC)
Location, Migration, Replication
clients must be able to find their servers
Heterogeneity
hardware, platforms, languages, management
cont.….
Why Distributed?
Resource and Data Sharing
printers, databases, multimedia servers, ...
Availability, Reliability
the loss of some instances can be hidden
Scalability
the system grows with demand (e.g., extra servers)
Performance
huge power (CPU, memory, ...) available
Cont.…..
Concept Example
Single server for all users-mostly for security
Centralized services
reasons
Doing routing based on complete
Centralized algorithms
information
Scaling Techniques
how to solve scaling problems
three possible solutions: hiding communication latencies,
distribution, and replication
%
%
% ISP
%
backbone
satellite link
desktop computer:
server:
network link:
A typical portion
of the Internet
December 18, 2023 Introduction 15
Distributed Systems Examples
(Intranets)
Composed of several local area networks (LANs) linked
by backbone connections to allow its users to access the
provided services.
Connected to the Internet via a router which allows its
users to make use of the internet services elsewhere.
Many organization protect their own services from
unauthorized use by filtering incoming and outgoing
messages using a firewall.
Local area
Web server network
email server
print
File server
other servers
the rest of
the Internet
router/firewall
A typical
Intranet
December 18, 2023 Introduction 17
Chapter two
ARCHITECTURES OF DISTRIBUTED
SYSTEMS
18
Architectures Of Distributed Systems
Transaction Processing Monitor(TP)
Its main task was to allow an application to access multiple server/databases
by offering it a transactional programming model, as shown .
and finally how these elements are jointly configured into a system.
Layered architectures
Object-based architectures
Data-centered architectures
Event-based architectures