Csi315csi315 Client/Server Models. Client/Server Environment LAN or WAN Server Data Berson, Fig 1.4, p.8 clients network.

Slides:



Advertisements
Similar presentations
Welcome to Middleware Joseph Amrithraj
Advertisements

Distributed Processing, Client/Server and Clusters
ICS 434 Advanced Database Systems
SWE 316: Software Design and Architecture
Distributed components
Technical Architectures
1 Pertemuan 13 Servers for E-Business Matakuliah: M0284/Teknologi & Infrastruktur E-Business Tahun: 2005 Versi: >
DATABASE APPLICATION DEVELOPMENT SAK 3408 The Web and DBMS.
Distributed DBMSs A distributed database is a single logical database that is physically distributed to computers on a network. Homogeneous DDBMS has the.
Overview Distributed vs. decentralized Why distributed databases
Asper School of Business University of Manitoba Systems Analysis & Design Instructor: Bob Travica System architectures Updated: November 2014.
Distributed Information Systems - The Client server model
12 Chapter 12 Client/Server Systems Hachim Haddouti.
Data Storage and Data Processing Architectures The difficulty is in the choice George Moore, 1900.
12 Chapter 12 Client/Server Systems Database Systems: Design, Implementation, and Management, Fifth Edition, Rob and Coronel.
The Architecture of Transaction Processing Systems
Chapter 9: The Client/Server Database Environment
Distributed Systems: Client/Server Computing
Client/Server Architecture
Centralized and Client/Server Architecture and Classification of DBMS
Tiered architectures 1 to N tiers. 2 An architectural history of computing 1 tier architecture – monolithic Information Systems – Presentation / frontend,
DATABASE MANAGEMENT SYSTEMS 2 ANGELITO I. CUNANAN JR.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 1 Distributed Systems Design 1.
Lecture The Client/Server Database Environment
Client/Server Computing. Information processing is distributed among several workstations and servers on a network, with each function being assigned.
The Client/Server Database Environment
Web Application Architecture: multi-tier (2-tier, 3-tier) & mvc
Client/Server Architectures
System Architecture & Hardware Configurations Dr. D. Bilal IS 592 Spring 2005.
Cli/Serv.: Models/11 Client/Server Distributed Systems v Objectives –introduce the client/server model –give an overview of DCE and Java RMI ,
Database System Concepts and Architecture Lecture # 3 22 June 2012 National University of Computer and Emerging Sciences.
Database Architectures and the Web Session 5
Introduction to distributed systems Dr. S. Indran 23 January 2004.
Chapter 2 Database System Architecture. An “architecture” for a database system. A specification of how it will work, what it will “look like.” The “ANSI/SPARC”
Lecture On Database Analysis and Design By- Jesmin Akhter Lecturer, IIT, Jahangirnagar University.
DAT602 Database Application Development Lecture 12 C/S Model Database Application.
Unit – I CLIENT / SERVER ARCHITECTURE. Unit Structure  Evolution of Client/Server Architecture  Client/Server Model  Characteristics of Client/Server.
The Client/Server Database Environment Ployphan Sornsuwit KPRU Ref.
Mainframe (Host) - Communications - User Interface - Business Logic - DBMS - Operating System - Storage (DB Files) Terminal (Display/Keyboard) Terminal.
Personal Computer - Stand- Alone Database  Database (or files) reside on a PC - on the hard disk.  Applications run on the same PC and directly access.
Lecture 22: Client-Server Software Engineering
Elmasri and Navathe, Fundamentals of Database Systems, Fourth Edition Copyright © 2004 Pearson Education, Inc. Slide 2-1 Data Models Data Model: A set.
Distributed database system
Application Development
Topic Distributed DBMS Database Management Systems Fall 2012 Presented by: Osama Ben Omran.
Chapter 9  Definition of terms  List advantages of client/server architecture  Explain three application components:
TM 8-1 Copyright © 1999 Addison Wesley Longman, Inc. Client/Server and Middleware.
Chapter 2 Database Environment.
CSC 480 Software Engineering Lecture 17 Nov 4, 2002.
System Architecture & Hardware Configurations Dr. D. Bilal IS 582 Spring 2008.
E-commerce Architecture Ayşe Başar Bener. Client Server Architecture E-commerce is based on client/ server architecture –Client processes requesting service.
ISC321 Database Systems I Chapter 2: Overview of Database Languages and Architectures Fall 2015 Dr. Abdullah Almutairi.
© 2009 Pearson Education, Inc. Publishing as Prentice Hall 1 Lecture 9: The Client/Server Database Environment Modern Database Management 9 th Edition.
Business System Development
CIIT-Human Computer Interaction-CSC456-Fall-2015-Mr
System Architecture & Hardware Configurations
Database System Concepts and Architecture
What is WWW? The term WWW refers to the World Wide Web or simply the Web. The World Wide Web consists of all the public Web sites connected to the Internet.
The Client/Server Database Environment
Principles of Network Applications
The Client/Server Database Environment
The Client/Server Database Environment
CSC 480 Software Engineering
System Architecture & Hardware Configurations
Chapter 9: The Client/Server Database Environment
#01 Client/Server Computing
Chapter 2 Database Environment Pearson Education © 2009.
Tiers vs. Layers.
#01 Client/Server Computing
Presentation transcript:

csi315csi315 Client/Server Models

Client/Server Environment LAN or WAN Server Data Berson, Fig 1.4, p.8 clients network

Client Part of the local computing system Functions initiates contact with server (“speaks first”) typically requests service from server, for Web, client is implemented in browser; for , in mail reader Requesting the return of records Client = “Origin”

Server Functions provides requested service to client e.g., Web server sends requested Web page, mail server delivers e- mail Server = “Target”

Client-Server Example The ATM network: –the clients are the ATM machines user interfaces; some simple application processing –the server is at the bank most application processing; very large database of customer accounts

Client/Server Processing Application processing is usually distributed between a client and the server. Server controls services/data that the client accesses Different client/server models are obtained by locating different components and combinations of the application on the client and server(s). In general: –presentation logic stays on the client –DBMS and database move to the server –parts of the business and database logic that can be used by several clients are placed on the server

Component Placement? How much data is required by the local application? How many application users require the same data? How many interactions occur between the application parts? Technical issues –platforms, networking

Database App. Presentation Logic Business Logic Database Logic DBMS Data base Stand-alone Application

The 2-tier Model The database is on the server Distributed database logic –most of it is on the client The client does the presentation and business logic. Challenges It is difficult to build heterogeneous database environments. Transaction processing is limited by the DBMS. Asynchronous processing is difficult –i.e. the client doesn’t wait for the server’s answer Scalability

The 2-tier Model Presentation Logic Business Logic Database Logic DBMS Data base Database Logic Client Server

The 3-tier Model Server Data Application/Business logicData Servers Server Data UNIX Win/NT Clients

The 3-tier Model Server Back-End Server Tier 1 Tier 2 Tier 3 Clients Price/Performance Functionality Local Autonomy Greater Integrity Security Central Control

3-Tier Architecture- Example Database XML File System (Web Site) Or Middle Tier “Business Logic” dissociates User and Back End Export/Import Request Information Object Repository

3-tier over 2-tier Benefits –The application logic in the middle-tier is more independent of the client and the back-end server –The application logic in the middle-tier can work more easily with data from multiple sources. –Encourages multiple back-end servers. Challenges Much more complex: network management, data integrity, maintenance, development Still (partially) dependent on platforms e.g. the client may still be restricted to a certain backend application server, but not (maybe) to any data server

3 tier-Example ATM machines are the clients (as before) –the middle-tier servers provide certain processing checking balances, money transfer requests directing queries to the relevant back-end server –back-end server(s) specialized by account type very robust concurrency control, transaction processing Many Web applications are 3-tier: –the Web browser is the client software –the embedded components in Web pages (e.g. Java applets) come from the middle-tier –the back-end server contains the database

Distributing Business Logic Three ways Locate it entirely on the client (‘fat’ client) Locate it entirely on the server (‘fat’ server) Split it between the client and server

Business Logic Presentation Logic Business Logic DBMS Data base Database Logic Client Server Business Logic

Fat Server Advantages Easier to update the application logic since clients not involved. Data is better hidden from clients. Easier to manage and debug since data and code is centrally located. Reduces bandwidth problems since data processing stays on the server. Better for mission-critical applications when fault-tolerance and stability are important.

Fat Client Advantages The server is unaffected when updates are done to the client’s application logic –the server will be more stable Easier to program –less networking –more direct access to client platform features, such as GUI

Multi-tier Model Middleware Physical Network

Multi-tier Model Asynchronous connectivity Data distribution using replication Name/directory services for resource location independence More complex data types More complex analysis Authentication services –you must 'prove' who you are to the system Distributed file system(s) Time services

Mult-tier Web Applications The Web browser is the client software on the first tier. Web page components come from the second tier. The third tier is a database front-end for a series of fourth tier heterogeneous databases