Lecture17 Distributed Architecture
Lecture17 Distributed Architecture
1
Faculty of Engineering & Technology ©Ramaiah University of Applied Sciences
Objectives
After completing this lecture, the student will be able to
• Describe distributed architecture
• Analyze client server architecture
• Analyze 1-tier, 2-tier, 3-tier and N-tier architecture
2
Faculty of Engineering & Technology ©Ramaiah University of Applied Sciences
Contents
• Client Server architecture
• 1-tier, 2-tier, 3-tier and N-tier architecture
3
Faculty of Engineering & Technology ©Ramaiah University of Applied Sciences
Distributed Architectures
• A distributed system is a collection of computational and storage devices
connected through a communications network
• In this type of system, data, software, and users are distributed
• The subsystems or components within a distributed system communicate
with each other using a number of methods including message passing,
remote procedure calls (RPC), and remote method invocation (RMI)
• A distributed system can be modeled by the client-server architecture, and
this forms the basis for multi-tier architectures.
4
Faculty of Engineering & Technology ©Ramaiah University of Applied Sciences
Distributed Architectures
• Alternatives are the broker architecture such as CORBA, and the service-
oriented architecture (SOA) such as web services and grid services
• Key features:
o location transparency and
o its services reliability and availability
5
Faculty of Engineering & Technology ©Ramaiah University of Applied Sciences
Distributed Architectures
Client-Server
7
Faculty of Engineering & Technology ©Ramaiah University of Applied Sciences
Distributed Architectures
Client-Server
• Advantages:
o Separation of responsibilities such as user interface presentation and business
logic processing
o Reusability of server components
• Disadvantages:
o Lack of heterogeneous infrastructure to deal with the requirement changes
o Security complications
o Server availability and reliability
o Testability and scalability
o Fat clients with presentation and business logic together
8
Faculty of Engineering & Technology ©Ramaiah University of Applied Sciences
Distributed Architectures
Two-Tier Architecture
9
Faculty of Engineering & Technology ©Ramaiah University of Applied Sciences
Distributed Architectures
Advantages:
• Technical advantages when going from one tier to two tier architectures:
o Take advantage of client capacity to off-load work to the clients
o Work within the server takes place within one scope (almost as in 1 tier)
o The server design is still tightly coupled and can be optimized by ignoring
presentation issues
o Still relatively easy to manage and control from a software engineering point of
view
10
Faculty of Engineering & Technology ©Ramaiah University of Applied Sciences
Distributed Architectures
Disadvantages:
o Similarly, the load created by a client will directly affect the work of others since
they are all competing for the same resources
11
Faculty of Engineering & Technology ©Ramaiah University of Applied Sciences
Distributed Architectures
Three-tier Architecture
12
Faculty of Engineering & Technology ©Ramaiah University of Applied Sciences
Distributed Architectures
Three-Layered Architecture
1. The presentation layer
• Managing the user interfaces of applications, including desktop
applications, Web browsers, and pervasive devices
• Provides a Web Server
• Servlet and JSP results caching and JSP tags caching
• Provides high-reliability, scalability, monitoring, and other features required
by enterprise applications
13
Faculty of Engineering & Technology ©Ramaiah University of Applied Sciences
Distributed Architectures
2. The business layer
• Contains the application’s business logic independent of the user interface,
including distributed components, running in the application server environment
• Enterprise Java Beans
14
Faculty of Engineering & Technology ©Ramaiah University of Applied Sciences
Distributed Architectures
Application servers and 3-Tiered Systems
• 3-tiered systems are common in e-commerce
and B2B applications
• Application servers provide a framework for
middle-tier applications
o Presentation
o Business Rules
• Services include
o Database connectivity
o Client connectivity
o Resource management
15
Faculty
©M. S. Ramaiah
of Engineering
University
& Technology
of Applied Sciences ©Ramaiah University of Applied Sciences
Distributed Architectures
Web Development Usage
17
Faculty of Engineering & Technology ©Ramaiah University of Applied Sciences
Distributed Architectures
Advantages of Layered Architecture
19
Faculty of Engineering & Technology ©Ramaiah University of Applied Sciences