0% found this document useful (0 votes)
4 views

Lecture 2

Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
4 views

Lecture 2

Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 13

Kashi Institute of Technology

(An autonomous institute)

SUBJECT- MOBILE COMPUTING


UNIT-1 Three Tier Architecture
Session:2024-25

Presented By –
Priya Srivastava
Assistant Professor
Department of CSE
MOBILE COMPUTING ARCHITECTURE
• The Three-Tier Client-Server Architecture in distributed
systems is a design model that separates applications into three
distinct layers:

• Presentation Tier: The user interface layer, where interactions


occur. It handles data display and user input.
• Application Tier: The business logic layer, which processes
user requests, performs computations, and makes decisions. It
acts as a mediator between the presentation and data tiers.
• Data Tier: The storage layer, is responsible for managing and
storing data. It handles database operations and data retrieval.
Components of Three-Tier Client Server Architecture in Distributed Systems

Here’s a detailed explanation of each component:

• 1. Presentation Tier (Client Tier)


• The Presentation Tier is responsible for the user interface and user interaction. It
serves as the front-end of the application, where users input data and view results.
• Components:
– User Interface (UI): Includes web browsers, mobile apps, or desktop
applications that users interact with. It displays data and collects user inputs.
– User Interaction Logic: Handles how user inputs are processed and
communicated to the Application Tier. This can involve form validation, data
formatting, and sending requests to the server.
• Responsibilities:
– Display data from the Application Tier to the user.
– Collect user inputs and forward them to the Application Tier.
– Provide a user-friendly interface and manage user interactions.
2. Application Tier (Business Logic Tier)
• The Application Tier is where the core business logic resides. It processes user
requests, performs calculations, enforces business rules, and interacts with the Data
Tier to retrieve or store data.
• Components:
– Business Logic: Implements the rules and processes specific to the application,
such as order processing, authentication, or data validation.
– Application Server: Hosts the business logic and handles communication
between the Presentation and Data Tiers. Examples include web servers or
application servers like Apache Tomcat, Microsoft IIS, or JBoss.
• Responsibilities:
– Process and interpret data received from the Presentation Tier.
– Execute business logic and apply rules.
– Communicate with the Data Tier to retrieve or store information.
– Send processed data back to the Presentation Tier for user display.
3. Data Tier (Database Tier)
• The Data Tier is responsible for data management and storage. It handles all
database operations, including data retrieval, updates, and management.
• Components:
– Database Management System (DBMS): Software like MySQL, Oracle, or
Microsoft SQL Server that manages data storage and retrieval.
– Database: The actual repository where data is stored, organized in tables or
other structures.
• Responsibilities:
– Store and manage data securely and efficiently.
– Handle queries and transactions initiated by the Application Tier.
– Ensure data integrity, consistency, and availability.
– Provide backup and recovery mechanisms to protect data.
• Interactions Among Tiers
• Client Request: The user interacts with the Presentation Tier, which sends
a request to the Application Tier.
• Business Processing: The Application Tier processes the request using its
business logic and may interact with the Data Tier to retrieve or update
data.
• Data Retrieval/Update: The Data Tier handles data operations and sends
the results back to the Application Tier.
• Response to Client: The Application Tier processes the results and sends
the response back to the Presentation Tier for display to the user.
• This tiered approach helps manage complexity by separating
responsibilities, allowing for easier maintenance, scalability, and flexibility
in distributed systems
Three-Tier Application In Web Development
• Web application will have the same tiers as the three architectures but only
difference is that they are with different names.
• Web Server: Web server is an presentation tier of an three-tier architecture
which servers as an presentation tier or UI (User Interface) tier. This content
can be static or dynamic based on there requirement such as an e-commerce
site where users can add products to their shopping cart, enter payment details,
or create an account.
• Application Server: Application tier is an middle tier which consists the full
logical that is required for the business which will process the user inputs and
so on. It will performs the logic’s like queries the inventory database to return
product availability or adds details to a customer’s profile.
• Database server: This is back-end tier of an web application it consists all the
data so this tier mostly there will be data base such as MySQL, Oracle, DB2
or PostgreSQL.
Benefits of Three-Tier Client-Server Architecture
• Below are the benefits of three-tier client-server architecture in distributed
systems:
• Scalability:
– Vertical Scaling: Each tier can be scaled independently. For instance, you
can add more application servers or database servers to handle increased
load without affecting the presentation tier.
– Horizontal Scaling: You can distribute the load across multiple servers for
each tier, enhancing the system’s ability to handle large volumes of
requests.
• Maintainability:
– Modular Design: The separation of concerns allows developers to make
changes or updates to one tier without affecting others. For example,
updating the user interface or business logic can be done independently.
– Easier Debugging: Isolating issues becomes easier as each tier has its own
distinct responsibilities.
• Flexibility:
– Technology Independence: Different technologies and platforms can be used
for each tier. For example, the presentation layer might use a web framework,
while the application layer could use a different programming language or
framework.
– Enhanced Adaptability: Changes in business logic or data storage
mechanisms can be implemented without affecting the user interface or other
parts of the system.
• Performance:
– Optimized Resource Use: Performance can be optimized at each tier. For
instance, caching mechanisms can be applied at the application tier to reduce
database load.
– Load Balancing: Distributing workload across multiple servers at each tier
can enhance overall system performance and responsiveness.
Disadvantages of Three-Tier Client Server
Architecture
• Below are the challenges of three-tier client-server architecture in distributed
systems:
• Complexity:
– System Design: Designing and implementing a three-tier architecture can be
complex due to the need to manage interactions and data flow between tiers.
– Integration Issues: Ensuring seamless integration between tiers may require
additional development and testing effort.
• Performance Overhead:
– Network Latency: Communication between tiers, especially when they are
distributed across different servers or locations, can introduce latency and
affect performance.
– Increased Resource Usage: Multiple layers may increase resource
consumption, such as network bandwidth and server processing power.

You might also like