5/5/2016
Lecture7: Distributed System
Architectures
Assist. Lecturer: Suad Alasadi
• The architecture include:
– The division of responsibilities between system components.
– The placement of the components on computers in the network.
• Client-server model:
– Most important and most widely distributed system architecture.
– Client and server roles are assigned and changeable.
• Servers may in turn be clients of other servers.
– Services may be implemented as several interacting processes in different host computers to provide a service to client processes:
• Servers partition the set of objects on which the service is based and distribute them among themselves (e.g. Web data and web servers)
Client-server model
• Clients invoke individual servers
Client invocation result
Server invocation result
Client
Server
Key:
Process: Computer:
Client-server model
• A service provided by multiple servers
Service
Server
Client
Server
Client
Server
Client-server model
• Web proxy server
– Provides a shared cache of web resources for client machines at a site or across several sites.
– Increase availability and performance of a service by reducing load on the WAN and web servers.
Client
Client
Proxy server
Web server
Web server
Peer processes Model
– All processes play similar roles without destination as a client or a server.
– Interacting cooperatively to perform a distributed activity.
– Communications pattern will depend on application requirements.
Peer processes Model
A distributed application based on peer processes
Application
Coordination code
Application
Coordination code
Application
Coordination code
1.Distributed Computing Systems
Many distributed systems are configured for High-Performance
Computing
Example : Cluster Computing : Essentially a group of high-end systems connected through a LAN.
2.Distributed Information Systems
The vast amount of distributed systems in use today are forms of traditional information systems, that now integrate legacy systems.
Example : Transaction processing systems.
3.Distributed Pervasive Systems
There is a next-generation of distributed systems emerging in which the nodes are small, mobile, and often embedded as part of a larger system
9
• A network of geographically distributed resources including computers, peripherals, switches, instruments, and data.
• Each user should have a single login account to access all resources.
• Resources may be owned by diverse organizations.
• Grids are typically managed by gridware.
• Gridware can be viewed as a special type of middleware that enable sharing and manage grid components based on user requirements and resource attributes (e.g., capacity, performance, availability…)
• Parallel Computing
• Distributed Computing
• Peer-to-Peer Computing
• Many others: Cluster Computing, Network
Computing, Client/Server Computing, Internet
Computing, etc...
• Distributed Supercomputing
• High-Throughput Computing
• On-Demand Computing
• Data-Intensive Computing
• Collaborative Computing
• Logistical Networking
13