DISTRIBUTED COMPUTING
Iftikhar Hussain Babur
System Analyst
Quaid-e-Azam Academy for Educational Development
Govt. of the Punjab, Wahdat Road Lahore
[email protected] Superior University, Gold Campus
Architectures
Architectural Styles
• Software architecture
• System architecture
Architectural style:- In terms of components
• The way
• The data
• How
Software component
Connector
9/10/2023 Superior University, Gold Campus 2
Architectures
Architectural styles for distributed systems are:
1. Layered architectures 2. Object-based architectures
9/10/2023 Superior University, Gold Campus 3
Architectures
3. Data-centered architectures
9/10/2023 Superior University, Gold Campus 4
Architectures
4. Event-based architectures
9/10/2023 Superior University, Gold Campus 5
Architectures
Shared data spaces – combination of
event-based architectures with data-
centered architectures.
• processes are decoupled
• SQL-like interface to the shared repository
Aim of Architectures:
9/10/2023 Superior University, Gold Campus 6
System Architecture
Centralized Architectures
Manage distributed system complexity
Basic client-server model:
• Processes are divided into two groups:
1. A server
2. A client
• General interaction between a client and a server.
9/10/2023 Superior University, Gold Campus 7
System Architecture
Communication
1. Client requests a service
2. The Server will process it, and is then sent to the client.
Connectionless protocol
Alternative - connection-oriented protocol ( TCP/IP -the
most common use of IP)
9/10/2023 Superior University, Gold Campus 8
Application Layering
Issues with Client / Server:
•distinction between a client and a server.
•Often no clear distinction.
9/10/2023 Superior University, Gold Campus 9
Application Layering
1. The user-interface level
• Clients typically implement the user-interface level
• Simplest user-interface program - character-based screen
• Simple GUI
• Modern user interfaces
2. The data level
• Manages the actual data that is being acted on
3. The processing level
• Contains the applications
• middle part of hierarchy -> logically placed at the processing
level
9/10/2023 Superior University, Gold Campus 10
Application Layering
Example: Internet search engine
• User-interface level: - a user types in a string of
keywords and is subsequently presented with a list of
titles of Web pages.
• Data Level: - huge database of Web pages that have
been pre-fetched and indexed.
• Processing level: - search engine that transforms the
user's string of keywords into one or more database
queries.
• ranks the results into a list
• transforms that list into a series of HTML pages
9/10/2023 Superior University, Gold Campus 11
Application Layering
• Simplified organization of an Internet search engine into three different
layers.
9/10/2023 Superior University, Gold Campus 12
Client Server Model-Data Level
• Contains the programs that maintain the actual data on
which the applications operate.
• Data level is typically implemented at the server side.
• Responsible for keeping data consistent across different
applications.
• Relational database organize most business-oriented
data.
• Data independence is crucial
• Other Data base choices –
• many applications operate on complex data types that are more
easily modeled in terms of objects than in terms of relations.
9/10/2023 Superior University, Gold Campus 13
Multi-tiered Architecture
Possibilities for physically distributing a client-server application
across several machines.
• Simplest organization - two types of machines:
• Distribute the programs in the application layers across different
machines
• Two-tiered architecture: client machines and server machines.
• Alternative client-server organizations (a)–(e).
9/10/2023 Superior University, Gold Campus 14
Cases:
9/10/2023 Superior University, Gold Campus 15
Issues
9/10/2023 Superior University, Gold Campus 16
Issues
Example of a server acting as client.
9/10/2023 Superior University, Gold Campus 17
Decentralized Architectures
• Vertical Distribution Architecture
• Horizontal Distribution Architecture
• Peer-to-peer architectures
• Structured Peer-to-Peer Architectures
• DHT-based system
• Unstructured Peer-to-Peer Architectures
9/10/2023 Superior University, Gold Campus 18
Research Task
Download any two research papers related to Decentralized
Architectures and bring the comparison of those research papers
in the form of a presentation in next class
9/10/2023 Superior University, Gold Campus 19
9/10/2023 Superior University, Gold Campus 20