SlideShare a Scribd company logo
Chapter 2 - Architectures
2
Introduction
 how to organize the collection of software components
 logical organization and
 physical organization
 i.e., software architectures: how they are organized and how
they communicate
 we will discuss
 architectural styles
 system architectures: centralized vs decentralized ones
3
2.1 Architectural Styles
 the logical organization of distributed systems into
software components
 a component is a modular unit with well-defined required
and provided interfaces that is replaceable within its
environment
 a connector is a mechanism that mediates
communication, coordination, or cooperation among
components, e.g., facilities for RPC, message passing, or
streaming data
 there are various architectural styles
 Layered architectures
 Object-based architectures
 Data-centered architectures
 Event-based architectures
4
 Layered architectures
 components are organized in a layered fashion where a
component at layer Li is allowed to call components at
the underlying layer Li-1, but not the other way around;
e.g., network layers
the layered architectural style
5
 Object-based architectures
 each object corresponds to a component and these
components are connected through a remote procedure
call mechanism (client-server paradigm)
the object-based architectural style
6
 Data-centered architectures
 processes communicate through a common repository;
e.g., a shared distributed file system
 Event-based architectures
 processes communicate through the propagation of events
 publish/subscribe systems
 processes publish events and the middleware ensures that
only those processes that subscribed to those events will
receive them
the event-based architectural style
7
 shared data spaces
 event-based architectures combined with data-centered
architectures
 processes are decoupled in time
the shared data-space architectural style
8
2.2 System Architectures
 the logical organization of distributed systems into
software components or how are processes organized in a
system
2.2.1 Centralized Architectures
 thinking in terms of clients requesting services from
servers
general interaction between a client and a server
9
 communication between client and server can be
 by a connectionless protocol if the underlying network is
fairly reliable; efficient since there is no much overhead
 but assuring reliability is difficult
 when messages are lost or corrupted let the client
send the request again; applicable only for
idempotent operations
 an operation is idempotent if it can be repeated
multiple times without harm; e.g., reading a record
in a database
 see later in Chapter 8: Fault Tolerance
 by reliable connection-oriented protocol if the underlying
network is unreliable
 establishing and terminating connections is
expensive
10
 Application Layering
 no clear distinction between a client and a server; for
instance a server for a distributed database may act as a
client when it forwards requests to different file servers
 three levels exist
 the user-interface level: implemented by clients and
contains all that is required by a client; usually
through GUIs, but not necessarily
 the processing level: contains the applications
 the data level: contains the programs that maintain
the actual data dealt with
11
 e.g., the general organization of an Internet search engine
into three different layers
 Client-Server Architectures
 how to physically distribute a client-server application
across several machines
 Multitiered Architectures
12
Two-tiered architecture: alternative client-server organizations
(a) put only terminal-dependent part of the user interface on the
client machine and let the applications remotely control the
presentation
(b) put the entire user-interface software on the client side
(c) move part of the application to the client, e.g. checking
correctness in filling forms
(d) and (e) are for powerful client machines (more popular)
13
three tiered architecture: an example of a server acting as a client
 an example is the organization of Web sites
14
2.2.2 Decentralized Architectures
 vertical distribution: the ones discussed so far where the
different tiers correspond directly with the logical
organization of applications; place logically different
components on different machines
 horizontal distribution: physically split up the client or the
server into logically equivalent parts
 an example is a peer-to-peer system where processes
are equal and hence each process acts as a client and a
server at the same time (servent)
 read about the different approaches of peer-to-peer
architecture - pages 44 - 51 and about Architectures
versus Middleware - pages 54 - 66
15
 another example is the horizontal distribution of a Web
service

More Related Content

What's hot

SMTP - SIMPLE MAIL TRANSFER PROTOCOL
SMTP - SIMPLE MAIL TRANSFER PROTOCOLSMTP - SIMPLE MAIL TRANSFER PROTOCOL
SMTP - SIMPLE MAIL TRANSFER PROTOCOL
Vidhu Arora
 
Devices that output Hardcopy
Devices that output HardcopyDevices that output Hardcopy
Devices that output Hardcopy
Maryam Fida
 
Enhanced ER(database)
Enhanced ER(database)Enhanced ER(database)
Enhanced ER(database)
welcometofacebook
 
Map reduce - simplified data processing on large clusters
Map reduce - simplified data processing on large clustersMap reduce - simplified data processing on large clusters
Map reduce - simplified data processing on large clusters
Cleverence Kombe
 
Simple Network Management Protocole
Simple Network Management ProtocoleSimple Network Management Protocole
Simple Network Management Protocole
Amin Komeili
 
Computer networks unit v
Computer networks    unit vComputer networks    unit v
Computer networks unit v
JAIGANESH SEKAR
 
Datetime - Julian Date
Datetime - Julian DateDatetime - Julian Date
Datetime - Julian Date
Shuo Chen
 
Congestion control
Congestion controlCongestion control
Congestion control
Aman Jaiswal
 
Carrier Sense Multiple Access With Collision Detection (CSMA/CD) Details : Me...
Carrier Sense Multiple Access With Collision Detection (CSMA/CD) Details : Me...Carrier Sense Multiple Access With Collision Detection (CSMA/CD) Details : Me...
Carrier Sense Multiple Access With Collision Detection (CSMA/CD) Details : Me...
Soumen Santra
 
IP, DNS and MAC concepts
IP, DNS and MAC conceptsIP, DNS and MAC concepts
IP, DNS and MAC concepts
Irshaad Abdool
 
Entity Relationship design issues
Entity Relationship design issuesEntity Relationship design issues
Entity Relationship design issues
Megha Sharma
 
Physical and Logical Clocks
Physical and Logical ClocksPhysical and Logical Clocks
Physical and Logical Clocks
Dilum Bandara
 
Attributes of output primitives( curve attributes & area fill attributes)
Attributes of output primitives( curve attributes & area fill attributes)Attributes of output primitives( curve attributes & area fill attributes)
Attributes of output primitives( curve attributes & area fill attributes)
shalinikarunakaran1
 
Free space managment46
Free space managment46Free space managment46
Free space managment46
myrajendra
 
Icmp
IcmpIcmp
Window scheduling algorithm
Window scheduling algorithmWindow scheduling algorithm
Window scheduling algorithm
Binal Parekh
 
Red Black Trees
Red Black TreesRed Black Trees
Red Black Trees
Varun Mahajan
 
IP addressing
IP addressingIP addressing
IP addressing
tameemyousaf
 
computer Graphics
computer Graphics computer Graphics
computer Graphics
Rozi khan
 
Flow control main
Flow control mainFlow control main
Flow control main
Nitesh Singh
 

What's hot (20)

SMTP - SIMPLE MAIL TRANSFER PROTOCOL
SMTP - SIMPLE MAIL TRANSFER PROTOCOLSMTP - SIMPLE MAIL TRANSFER PROTOCOL
SMTP - SIMPLE MAIL TRANSFER PROTOCOL
 
Devices that output Hardcopy
Devices that output HardcopyDevices that output Hardcopy
Devices that output Hardcopy
 
Enhanced ER(database)
Enhanced ER(database)Enhanced ER(database)
Enhanced ER(database)
 
Map reduce - simplified data processing on large clusters
Map reduce - simplified data processing on large clustersMap reduce - simplified data processing on large clusters
Map reduce - simplified data processing on large clusters
 
Simple Network Management Protocole
Simple Network Management ProtocoleSimple Network Management Protocole
Simple Network Management Protocole
 
Computer networks unit v
Computer networks    unit vComputer networks    unit v
Computer networks unit v
 
Datetime - Julian Date
Datetime - Julian DateDatetime - Julian Date
Datetime - Julian Date
 
Congestion control
Congestion controlCongestion control
Congestion control
 
Carrier Sense Multiple Access With Collision Detection (CSMA/CD) Details : Me...
Carrier Sense Multiple Access With Collision Detection (CSMA/CD) Details : Me...Carrier Sense Multiple Access With Collision Detection (CSMA/CD) Details : Me...
Carrier Sense Multiple Access With Collision Detection (CSMA/CD) Details : Me...
 
IP, DNS and MAC concepts
IP, DNS and MAC conceptsIP, DNS and MAC concepts
IP, DNS and MAC concepts
 
Entity Relationship design issues
Entity Relationship design issuesEntity Relationship design issues
Entity Relationship design issues
 
Physical and Logical Clocks
Physical and Logical ClocksPhysical and Logical Clocks
Physical and Logical Clocks
 
Attributes of output primitives( curve attributes & area fill attributes)
Attributes of output primitives( curve attributes & area fill attributes)Attributes of output primitives( curve attributes & area fill attributes)
Attributes of output primitives( curve attributes & area fill attributes)
 
Free space managment46
Free space managment46Free space managment46
Free space managment46
 
Icmp
IcmpIcmp
Icmp
 
Window scheduling algorithm
Window scheduling algorithmWindow scheduling algorithm
Window scheduling algorithm
 
Red Black Trees
Red Black TreesRed Black Trees
Red Black Trees
 
IP addressing
IP addressingIP addressing
IP addressing
 
computer Graphics
computer Graphics computer Graphics
computer Graphics
 
Flow control main
Flow control mainFlow control main
Flow control main
 

Similar to Chapter 2-Architectures2.ppt

Distributed Systems Architecture in Software Engineering SE11
Distributed Systems Architecture in Software Engineering SE11Distributed Systems Architecture in Software Engineering SE11
Distributed Systems Architecture in Software Engineering SE11
koolkampus
 
Ch12
Ch12Ch12
Ch12
phanleson
 
Chapter 2A-Architectures.ppt
Chapter 2A-Architectures.pptChapter 2A-Architectures.ppt
Chapter 2A-Architectures.ppt
sirajmohammed35
 
Distributed Computing Report
Distributed Computing ReportDistributed Computing Report
Distributed Computing Report
IIT Kharagpur
 
Chapter 2- Architecture os distributed system.ppt
Chapter 2- Architecture os distributed system.pptChapter 2- Architecture os distributed system.ppt
Chapter 2- Architecture os distributed system.ppt
AschalewAyele2
 
04 Client Server Computing
04 Client Server Computing04 Client Server Computing
04 Client Server Computing
Laguna State Polytechnic University
 
Lecture5 architecture styles.pdf
Lecture5 architecture styles.pdfLecture5 architecture styles.pdf
Lecture5 architecture styles.pdf
ssuser9d62d6
 
unit 4-1.pptx
unit 4-1.pptxunit 4-1.pptx
unit 4-1.pptx
prakashvs7
 
Client server computing
Client server computingClient server computing
Client server computing
StudsPlanet.com
 
Distributed architecture (SAD)
Distributed architecture (SAD)Distributed architecture (SAD)
Distributed architecture (SAD)
Khubaib Ahmad Kunjahi
 
Clientserver
ClientserverClientserver
Clientserver
Madhumithah Ilango
 
communication in distributed systems
communication in distributed systemscommunication in distributed systems
communication in distributed systems
mohammed alrekabe
 
SOFTWARE COMPUTING
SOFTWARE COMPUTINGSOFTWARE COMPUTING
SOFTWARE COMPUTING
DrThenmozhiKarunanit
 
Chapter 2 Architecture (updated).pptx
Chapter 2  Architecture (updated).pptxChapter 2  Architecture (updated).pptx
Chapter 2 Architecture (updated).pptx
TadeseBeyene
 
Chapter 3-Processes.ppt
Chapter 3-Processes.pptChapter 3-Processes.ppt
Chapter 3-Processes.ppt
sirajmohammed35
 
Models of Distributed System
Models of Distributed SystemModels of Distributed System
Models of Distributed System
Ashish KC
 
Distributed computing bsics
Distributed computing bsicsDistributed computing bsics
Distributed computing bsics
Deepak John
 
Chapter 1-Introduction.ppt
Chapter 1-Introduction.pptChapter 1-Introduction.ppt
Chapter 1-Introduction.ppt
balewayalew
 
Communications is distributed systems
Communications is distributed systemsCommunications is distributed systems
Communications is distributed systems
SHATHAN
 
Client server computing
Client server computingClient server computing
Client server computing
jorge cabiao
 

Similar to Chapter 2-Architectures2.ppt (20)

Distributed Systems Architecture in Software Engineering SE11
Distributed Systems Architecture in Software Engineering SE11Distributed Systems Architecture in Software Engineering SE11
Distributed Systems Architecture in Software Engineering SE11
 
Ch12
Ch12Ch12
Ch12
 
Chapter 2A-Architectures.ppt
Chapter 2A-Architectures.pptChapter 2A-Architectures.ppt
Chapter 2A-Architectures.ppt
 
Distributed Computing Report
Distributed Computing ReportDistributed Computing Report
Distributed Computing Report
 
Chapter 2- Architecture os distributed system.ppt
Chapter 2- Architecture os distributed system.pptChapter 2- Architecture os distributed system.ppt
Chapter 2- Architecture os distributed system.ppt
 
04 Client Server Computing
04 Client Server Computing04 Client Server Computing
04 Client Server Computing
 
Lecture5 architecture styles.pdf
Lecture5 architecture styles.pdfLecture5 architecture styles.pdf
Lecture5 architecture styles.pdf
 
unit 4-1.pptx
unit 4-1.pptxunit 4-1.pptx
unit 4-1.pptx
 
Client server computing
Client server computingClient server computing
Client server computing
 
Distributed architecture (SAD)
Distributed architecture (SAD)Distributed architecture (SAD)
Distributed architecture (SAD)
 
Clientserver
ClientserverClientserver
Clientserver
 
communication in distributed systems
communication in distributed systemscommunication in distributed systems
communication in distributed systems
 
SOFTWARE COMPUTING
SOFTWARE COMPUTINGSOFTWARE COMPUTING
SOFTWARE COMPUTING
 
Chapter 2 Architecture (updated).pptx
Chapter 2  Architecture (updated).pptxChapter 2  Architecture (updated).pptx
Chapter 2 Architecture (updated).pptx
 
Chapter 3-Processes.ppt
Chapter 3-Processes.pptChapter 3-Processes.ppt
Chapter 3-Processes.ppt
 
Models of Distributed System
Models of Distributed SystemModels of Distributed System
Models of Distributed System
 
Distributed computing bsics
Distributed computing bsicsDistributed computing bsics
Distributed computing bsics
 
Chapter 1-Introduction.ppt
Chapter 1-Introduction.pptChapter 1-Introduction.ppt
Chapter 1-Introduction.ppt
 
Communications is distributed systems
Communications is distributed systemsCommunications is distributed systems
Communications is distributed systems
 
Client server computing
Client server computingClient server computing
Client server computing
 

More from MeymunaMohammed1

Chapter 6-Synchronozation2.ppt
Chapter 6-Synchronozation2.pptChapter 6-Synchronozation2.ppt
Chapter 6-Synchronozation2.ppt
MeymunaMohammed1
 
Distributed system.pptx
Distributed system.pptxDistributed system.pptx
Distributed system.pptx
MeymunaMohammed1
 
ANS_Ch_05_Handouts.pdf
ANS_Ch_05_Handouts.pdfANS_Ch_05_Handouts.pdf
ANS_Ch_05_Handouts.pdf
MeymunaMohammed1
 
Seminar Course instruction .ppt
Seminar Course instruction .pptSeminar Course instruction .ppt
Seminar Course instruction .ppt
MeymunaMohammed1
 
M.Sc Mobile computing.pptx
M.Sc Mobile computing.pptxM.Sc Mobile computing.pptx
M.Sc Mobile computing.pptx
MeymunaMohammed1
 
Cloud_Ch_01_Handouts(1).pdf
Cloud_Ch_01_Handouts(1).pdfCloud_Ch_01_Handouts(1).pdf
Cloud_Ch_01_Handouts(1).pdf
MeymunaMohammed1
 
ANS_Ch_06_Handouts.pdf
ANS_Ch_06_Handouts.pdfANS_Ch_06_Handouts.pdf
ANS_Ch_06_Handouts.pdf
MeymunaMohammed1
 
ANS_Ch_05_Handouts.pdf
ANS_Ch_05_Handouts.pdfANS_Ch_05_Handouts.pdf
ANS_Ch_05_Handouts.pdf
MeymunaMohammed1
 
ANS_Ch_04_Handouts.pdf
ANS_Ch_04_Handouts.pdfANS_Ch_04_Handouts.pdf
ANS_Ch_04_Handouts.pdf
MeymunaMohammed1
 
Chapter 3-Processes2.pptx
Chapter 3-Processes2.pptxChapter 3-Processes2.pptx
Chapter 3-Processes2.pptx
MeymunaMohammed1
 
Chapter 2-Architectures23.ppt
Chapter 2-Architectures23.pptChapter 2-Architectures23.ppt
Chapter 2-Architectures23.ppt
MeymunaMohammed1
 

More from MeymunaMohammed1 (11)

Chapter 6-Synchronozation2.ppt
Chapter 6-Synchronozation2.pptChapter 6-Synchronozation2.ppt
Chapter 6-Synchronozation2.ppt
 
Distributed system.pptx
Distributed system.pptxDistributed system.pptx
Distributed system.pptx
 
ANS_Ch_05_Handouts.pdf
ANS_Ch_05_Handouts.pdfANS_Ch_05_Handouts.pdf
ANS_Ch_05_Handouts.pdf
 
Seminar Course instruction .ppt
Seminar Course instruction .pptSeminar Course instruction .ppt
Seminar Course instruction .ppt
 
M.Sc Mobile computing.pptx
M.Sc Mobile computing.pptxM.Sc Mobile computing.pptx
M.Sc Mobile computing.pptx
 
Cloud_Ch_01_Handouts(1).pdf
Cloud_Ch_01_Handouts(1).pdfCloud_Ch_01_Handouts(1).pdf
Cloud_Ch_01_Handouts(1).pdf
 
ANS_Ch_06_Handouts.pdf
ANS_Ch_06_Handouts.pdfANS_Ch_06_Handouts.pdf
ANS_Ch_06_Handouts.pdf
 
ANS_Ch_05_Handouts.pdf
ANS_Ch_05_Handouts.pdfANS_Ch_05_Handouts.pdf
ANS_Ch_05_Handouts.pdf
 
ANS_Ch_04_Handouts.pdf
ANS_Ch_04_Handouts.pdfANS_Ch_04_Handouts.pdf
ANS_Ch_04_Handouts.pdf
 
Chapter 3-Processes2.pptx
Chapter 3-Processes2.pptxChapter 3-Processes2.pptx
Chapter 3-Processes2.pptx
 
Chapter 2-Architectures23.ppt
Chapter 2-Architectures23.pptChapter 2-Architectures23.ppt
Chapter 2-Architectures23.ppt
 

Recently uploaded

Best Places to Stay in New Brunswick, Canada.
Best Places to Stay in New Brunswick, Canada.Best Places to Stay in New Brunswick, Canada.
Best Places to Stay in New Brunswick, Canada.
Mahogany Manor
 
How To Change A Name On American Airlines Ticket.pptx
How To Change A Name On American Airlines Ticket.pptxHow To Change A Name On American Airlines Ticket.pptx
How To Change A Name On American Airlines Ticket.pptx
edqour001namechange
 
How Do I Plan a Kilimanjaro Climb? 7 Essential Tips Revealed.pdf
How Do I Plan a Kilimanjaro Climb? 7 Essential Tips Revealed.pdfHow Do I Plan a Kilimanjaro Climb? 7 Essential Tips Revealed.pdf
How Do I Plan a Kilimanjaro Climb? 7 Essential Tips Revealed.pdf
Eastafrica Travelcompany
 
Wayanad-The-Touristry-Heaven to the tour.pptx
Wayanad-The-Touristry-Heaven to the tour.pptxWayanad-The-Touristry-Heaven to the tour.pptx
Wayanad-The-Touristry-Heaven to the tour.pptx
cosmo-soil
 
Un viaje a Argentina updated xxxxxxxxxxx
Un viaje a Argentina updated xxxxxxxxxxxUn viaje a Argentina updated xxxxxxxxxxx
Un viaje a Argentina updated xxxxxxxxxxx
Judy Hochberg
 
Un viaje a Buenos Aires y sus alrededores
Un viaje a Buenos Aires y sus alrededoresUn viaje a Buenos Aires y sus alrededores
Un viaje a Buenos Aires y sus alrededores
Judy Hochberg
 
Assessing the Influence of Transportation on the Tourism Industry in Nigeria
Assessing the Influence of Transportation on the  Tourism Industry in NigeriaAssessing the Influence of Transportation on the  Tourism Industry in Nigeria
Assessing the Influence of Transportation on the Tourism Industry in Nigeria
gsochially
 
What Challenges Await Beginners in Snowshoeing
What Challenges Await Beginners in SnowshoeingWhat Challenges Await Beginners in Snowshoeing
What Challenges Await Beginners in Snowshoeing
Snowshoe Tahoe
 
Understanding Bus Hire ServicesIN MELBOURNE .pptx
Understanding Bus Hire ServicesIN MELBOURNE .pptxUnderstanding Bus Hire ServicesIN MELBOURNE .pptx
Understanding Bus Hire ServicesIN MELBOURNE .pptx
MELBOURNEBUSHIRE
 
How To Change Your Name On American Airlines Aadvantage.pptx
How To Change Your Name On American Airlines Aadvantage.pptxHow To Change Your Name On American Airlines Aadvantage.pptx
How To Change Your Name On American Airlines Aadvantage.pptx
edqour001namechange
 
Agama Tours&Safaris-Kilimanjaro day trip
Agama Tours&Safaris-Kilimanjaro day tripAgama Tours&Safaris-Kilimanjaro day trip
Agama Tours&Safaris-Kilimanjaro day trip
Agama Tours
 
在线办理(BU毕业证书)波士顿大学毕业证录取通知书一模一样
在线办理(BU毕业证书)波士顿大学毕业证录取通知书一模一样在线办理(BU毕业证书)波士顿大学毕业证录取通知书一模一样
在线办理(BU毕业证书)波士顿大学毕业证录取通知书一模一样
v6ldcxuq
 
Discovering Egypt A Step-by-Step Guide to Planning Your Trip.ppt
Discovering Egypt A Step-by-Step Guide to Planning Your Trip.pptDiscovering Egypt A Step-by-Step Guide to Planning Your Trip.ppt
Discovering Egypt A Step-by-Step Guide to Planning Your Trip.ppt
Imperial Egypt
 
Excursions in Tahiti Island Adventure
Excursions in Tahiti Island AdventureExcursions in Tahiti Island Adventure
Excursions in Tahiti Island Adventure
Unique Tahiti
 
Top 10 Tourist Places in South India to Explore.pdf
Top 10 Tourist Places in South India to Explore.pdfTop 10 Tourist Places in South India to Explore.pdf
Top 10 Tourist Places in South India to Explore.pdf
Savita Yadav
 

Recently uploaded (15)

Best Places to Stay in New Brunswick, Canada.
Best Places to Stay in New Brunswick, Canada.Best Places to Stay in New Brunswick, Canada.
Best Places to Stay in New Brunswick, Canada.
 
How To Change A Name On American Airlines Ticket.pptx
How To Change A Name On American Airlines Ticket.pptxHow To Change A Name On American Airlines Ticket.pptx
How To Change A Name On American Airlines Ticket.pptx
 
How Do I Plan a Kilimanjaro Climb? 7 Essential Tips Revealed.pdf
How Do I Plan a Kilimanjaro Climb? 7 Essential Tips Revealed.pdfHow Do I Plan a Kilimanjaro Climb? 7 Essential Tips Revealed.pdf
How Do I Plan a Kilimanjaro Climb? 7 Essential Tips Revealed.pdf
 
Wayanad-The-Touristry-Heaven to the tour.pptx
Wayanad-The-Touristry-Heaven to the tour.pptxWayanad-The-Touristry-Heaven to the tour.pptx
Wayanad-The-Touristry-Heaven to the tour.pptx
 
Un viaje a Argentina updated xxxxxxxxxxx
Un viaje a Argentina updated xxxxxxxxxxxUn viaje a Argentina updated xxxxxxxxxxx
Un viaje a Argentina updated xxxxxxxxxxx
 
Un viaje a Buenos Aires y sus alrededores
Un viaje a Buenos Aires y sus alrededoresUn viaje a Buenos Aires y sus alrededores
Un viaje a Buenos Aires y sus alrededores
 
Assessing the Influence of Transportation on the Tourism Industry in Nigeria
Assessing the Influence of Transportation on the  Tourism Industry in NigeriaAssessing the Influence of Transportation on the  Tourism Industry in Nigeria
Assessing the Influence of Transportation on the Tourism Industry in Nigeria
 
What Challenges Await Beginners in Snowshoeing
What Challenges Await Beginners in SnowshoeingWhat Challenges Await Beginners in Snowshoeing
What Challenges Await Beginners in Snowshoeing
 
Understanding Bus Hire ServicesIN MELBOURNE .pptx
Understanding Bus Hire ServicesIN MELBOURNE .pptxUnderstanding Bus Hire ServicesIN MELBOURNE .pptx
Understanding Bus Hire ServicesIN MELBOURNE .pptx
 
How To Change Your Name On American Airlines Aadvantage.pptx
How To Change Your Name On American Airlines Aadvantage.pptxHow To Change Your Name On American Airlines Aadvantage.pptx
How To Change Your Name On American Airlines Aadvantage.pptx
 
Agama Tours&Safaris-Kilimanjaro day trip
Agama Tours&Safaris-Kilimanjaro day tripAgama Tours&Safaris-Kilimanjaro day trip
Agama Tours&Safaris-Kilimanjaro day trip
 
在线办理(BU毕业证书)波士顿大学毕业证录取通知书一模一样
在线办理(BU毕业证书)波士顿大学毕业证录取通知书一模一样在线办理(BU毕业证书)波士顿大学毕业证录取通知书一模一样
在线办理(BU毕业证书)波士顿大学毕业证录取通知书一模一样
 
Discovering Egypt A Step-by-Step Guide to Planning Your Trip.ppt
Discovering Egypt A Step-by-Step Guide to Planning Your Trip.pptDiscovering Egypt A Step-by-Step Guide to Planning Your Trip.ppt
Discovering Egypt A Step-by-Step Guide to Planning Your Trip.ppt
 
Excursions in Tahiti Island Adventure
Excursions in Tahiti Island AdventureExcursions in Tahiti Island Adventure
Excursions in Tahiti Island Adventure
 
Top 10 Tourist Places in South India to Explore.pdf
Top 10 Tourist Places in South India to Explore.pdfTop 10 Tourist Places in South India to Explore.pdf
Top 10 Tourist Places in South India to Explore.pdf
 

Chapter 2-Architectures2.ppt

  • 1. Chapter 2 - Architectures
  • 2. 2 Introduction  how to organize the collection of software components  logical organization and  physical organization  i.e., software architectures: how they are organized and how they communicate  we will discuss  architectural styles  system architectures: centralized vs decentralized ones
  • 3. 3 2.1 Architectural Styles  the logical organization of distributed systems into software components  a component is a modular unit with well-defined required and provided interfaces that is replaceable within its environment  a connector is a mechanism that mediates communication, coordination, or cooperation among components, e.g., facilities for RPC, message passing, or streaming data  there are various architectural styles  Layered architectures  Object-based architectures  Data-centered architectures  Event-based architectures
  • 4. 4  Layered architectures  components are organized in a layered fashion where a component at layer Li is allowed to call components at the underlying layer Li-1, but not the other way around; e.g., network layers the layered architectural style
  • 5. 5  Object-based architectures  each object corresponds to a component and these components are connected through a remote procedure call mechanism (client-server paradigm) the object-based architectural style
  • 6. 6  Data-centered architectures  processes communicate through a common repository; e.g., a shared distributed file system  Event-based architectures  processes communicate through the propagation of events  publish/subscribe systems  processes publish events and the middleware ensures that only those processes that subscribed to those events will receive them the event-based architectural style
  • 7. 7  shared data spaces  event-based architectures combined with data-centered architectures  processes are decoupled in time the shared data-space architectural style
  • 8. 8 2.2 System Architectures  the logical organization of distributed systems into software components or how are processes organized in a system 2.2.1 Centralized Architectures  thinking in terms of clients requesting services from servers general interaction between a client and a server
  • 9. 9  communication between client and server can be  by a connectionless protocol if the underlying network is fairly reliable; efficient since there is no much overhead  but assuring reliability is difficult  when messages are lost or corrupted let the client send the request again; applicable only for idempotent operations  an operation is idempotent if it can be repeated multiple times without harm; e.g., reading a record in a database  see later in Chapter 8: Fault Tolerance  by reliable connection-oriented protocol if the underlying network is unreliable  establishing and terminating connections is expensive
  • 10. 10  Application Layering  no clear distinction between a client and a server; for instance a server for a distributed database may act as a client when it forwards requests to different file servers  three levels exist  the user-interface level: implemented by clients and contains all that is required by a client; usually through GUIs, but not necessarily  the processing level: contains the applications  the data level: contains the programs that maintain the actual data dealt with
  • 11. 11  e.g., the general organization of an Internet search engine into three different layers  Client-Server Architectures  how to physically distribute a client-server application across several machines  Multitiered Architectures
  • 12. 12 Two-tiered architecture: alternative client-server organizations (a) put only terminal-dependent part of the user interface on the client machine and let the applications remotely control the presentation (b) put the entire user-interface software on the client side (c) move part of the application to the client, e.g. checking correctness in filling forms (d) and (e) are for powerful client machines (more popular)
  • 13. 13 three tiered architecture: an example of a server acting as a client  an example is the organization of Web sites
  • 14. 14 2.2.2 Decentralized Architectures  vertical distribution: the ones discussed so far where the different tiers correspond directly with the logical organization of applications; place logically different components on different machines  horizontal distribution: physically split up the client or the server into logically equivalent parts  an example is a peer-to-peer system where processes are equal and hence each process acts as a client and a server at the same time (servent)  read about the different approaches of peer-to-peer architecture - pages 44 - 51 and about Architectures versus Middleware - pages 54 - 66
  • 15. 15  another example is the horizontal distribution of a Web service

Editor's Notes

  1. 3
  2. 4
  3. 5
  4. 6
  5. 7