Unit I Chapter 1 CLIENT SERVER ARCHITECTURE AU




































- Slides: 36

Unit – I Chapter -1 CLIENT / SERVER ARCHITECTURE AU Distance Education – DMC 1754 - Middleware Technologies - Unit I

Unit Structure Ø Evolution of Client/Server Architecture Ø Client/Server Model Ø Characteristics of Client/Server Model Ø Client/Server Architecture in the Web Ø Types of Servers Ø Types of Client/Server Models Ø Advantages & Disadvantages of Client/Server Model AU Distance Education – DMC 1754 - Middleware Technologies - Unit I

Evolution of Client/Server Architecture Ø Mainframes § § Dumb Terminals All processing/data storage on mainframe computer Large number of users Expensive Ø Personal Computers § Single User system § Word Processing, Data Analysis using Spreadsheet § Multimedia Applications & Games AU Distance Education – DMC 1754 - Middleware Technologies - Unit I

Evolution of Client/Server Architecture Ø Clients & Server on different computer systems Ø Local Area Network for Server and Client connectivity Ø Multiple Users Ø Distributed computation, analysis, and presentation between PCs Ø Evolved during 1980 s Ø Heterogeneous hardware and software Ø Provides greater usability, flexibility, scalability and interoperability AU Distance Education – DMC 1754 - Middleware Technologies - Unit I

CLIENT / SERVER MODEL Ø Model or architecture describes the relationship between two computer programs – Client & Server Ø Client is the requester that makes a service request Ø Server fulfills the request or services the request Ø Multiple client programs share the services of a common server program AU Distance Education – DMC 1754 - Middleware Technologies - Unit I

CLIENT / SERVER MODEL Ø Servers typically contain data files & applications accessed by multiple clients Ø Client & Server share the processing load Ø Client / Server can be on same computer system or on different computer systems Ø Client/Server model - a convenient way to interconnect programs distributed across different locations AU Distance Education – DMC 1754 - Middleware Technologies - Unit I

CLIENT / SERVER MODEL Client initiates request Server services request SERVER AU Distance Education – DMC 1754 - Middleware Technologies - Unit I CLIENT

CLIENT / SERVER MODEL Ø Server can range from PCs to mainframes Ø Standard Server hardware § Support for large amount of RAM § Fast input and output § Fast network cards § Ability to support multiple processors § Support for fault tolerance AU Distance Education – DMC 1754 - Middleware Technologies - Unit I

Characteristics of Client/Server Model Ø Asymmetrical protocols Ø Encapsulation of services Ø Location transparency Ø Message-based exchanges Ø Modular, Extensible design Ø Platform Independence Ø Scalability Ø Separation of Client/Server Functionality Ø Shared resources AU Distance Education – DMC 1754 - Middleware Technologies - Unit I

Characteristics of Client/Server Model Ø Benefits Provided by Server § Optimization § Centralization § Data Integity § Security § Back-up AU Distance Education – DMC 1754 - Middleware Technologies - Unit I

Function of Client / Server Ø Client § § Initiates requests Waits for and receives replies Can connect to several servers at the same time Typically interacts directly with end-users using a Graphical User Interface (GUI) Ø Server § Waits for requests from clients § Upon receipt of requests, processes them and then serves replies § Usually accepts connections from a large number of clients § Typically does not interact directly with end-users AU Distance Education – DMC 1754 - Middleware Technologies - Unit I

Transaction Processing Example Ø Transaction –Get Balance in a Bank Account Ø Steps § User initiates request giving bank account number (Client program ) § Main Server at Bank (Server program) services the request by contacting the Database server o Sends a request (Client Program) to the Database Server along with the bank account number o Database Server (Server Program) retrieves the bank balance using the bank account number and returns the value § Main server at Bank (Server Program) returns the balance amount to the user (Client Program) AU Distance Education – DMC 1754 - Middleware Technologies - Unit I

CLIENT / SERVER Transaction Processing 4 1 CLIENT 2 MAIN SERVER 3 DATABASE SERVER AU Distance Education – DMC 1754 - Middleware Technologies - Unit I

CLIENT/SERVER ARCHITECTURE IN THE WEB Ø World Wide Web (WWW) or Web revolves around the client/server architecture Ø Client computer system uses Browsers ( like Internet Explorer, Netscape Navigator, Mozilla etc. ) to interact with Internet servers using Protocols Ø Protocols help in the accurate transfer of data requests from browser & responses from server Ø Commonly used protocols : § HTTP (Hyper Text Transfer Protocol) § FTP (File Transfer Protocol) § SMTP (Simple Mail Transfer Protocol) AU Distance Education – DMC 1754 - Middleware Technologies - Unit I

Client / Server Model Static HTML Pages AU Distance Education – DMC 1754 - Middleware Technologies - Unit I

Client / Server Model Dynamic HTML Pages AU Distance Education – DMC 1754 - Middleware Technologies - Unit I

Client / Server Model Server – side Scripting AU Distance Education – DMC 1754 - Middleware Technologies - Unit I

Types of Servers Ø File Server Ø Database Server Ø Application Server Ø Web Server Ø Object Server Ø Others – Chat Server, Fax Server, Mail server, News Server … AU Distance Education – DMC 1754 - Middleware Technologies - Unit I

FILE SERVER AU Distance Education – DMC 1754 - Middleware Technologies - Unit I

FILE SERVER Ø Objectives of File Server § § To promote sharing of files (computer programs and/or data) To encourage indirect or implicit (via programs) use of remote computers To shield a user from variations in file storage systems among hosts To transfer data reliably and efficiently AU Distance Education – DMC 1754 - Middleware Technologies - Unit I

Database Server Ø A computer in a LAN dedicated to database storage and retrieval Ø The database server holds the Database Management System (DBMS) and the databases Ø Upon requests from the client machines, it searches the database for selected records and passes them back over the network AU Distance Education – DMC 1754 - Middleware Technologies - Unit I

Database Server - Example Software Project Team – sharing a database AU Distance Education – DMC 1754 - Middleware Technologies - Unit I

APPLICATION SERVER Ø Application server runs the programs and processes the data Ø Application servers are typically used for complex transaction-based applications Ø Application server performs the business logic functions and some data access Ø An application server provides middle tier processing between the user's machine and the database management system (DBMS) AU Distance Education – DMC 1754 - Middleware Technologies - Unit I

Web Server delivers web pages to browsers AU Distance Education – DMC 1754 - Middleware Technologies - Unit I

Client/Server Application Ø Has three functional units: § Presentation logic or user interface (for example, ATM machines) § Business logic (for example software that enables a customer to request an account balance) § Data (for example, records of customer accounts) Ø Functional units can reside on the client or on multiple servers Ø Middleware is the software that connects / communicates between client and server AU Distance Education – DMC 1754 - Middleware Technologies - Unit I

Two-Tier Architecture AU Distance Education – DMC 1754 - Middleware Technologies - Unit I

Two-Tier Architecture - Internet AU Distance Education – DMC 1754 - Middleware Technologies - Unit I

Three -Tier Architecture AU Distance Education – DMC 1754 - Middleware Technologies - Unit I

Three -Tier Architecture Ø The Middle Tier can be § § A Transaction Processing Monitor A Message Server An Application Server An Object Server AU Distance Education – DMC 1754 - Middleware Technologies - Unit I

Three -Tier Architecture - Internet AU Distance Education – DMC 1754 - Middleware Technologies - Unit I

Multi -Tier Architecture AU Distance Education – DMC 1754 - Middleware Technologies - Unit I

Multi -Tier Architecture AU Distance Education – DMC 1754 - Middleware Technologies - Unit I

Multi -Tier Architecture AU Distance Education – DMC 1754 - Middleware Technologies - Unit I

Advantages of Client/Server Ø Distribution or sharing of processing load among several independent computers Ø Centralized data storage on server, hence easy to implement security of data access Ø Clients with the appropriate permissions may be permitted to access and change data Ø Centralized data. Hence easy to administer Ø Is capable of functioning with multiple different clients each with different capabilities AU Distance Education – DMC 1754 - Middleware Technologies - Unit I

Disadvantages of Client/Server Ø Traffic congestion on the network (number of simultaneous client requests to a server) can cause a server to become overloaded and unable to service client’s requests Ø Under client-server, should a critical server fail, clients’ requests cannot be fulfilled. Hence, lack of robustness is a cause for concern AU Distance Education – DMC 1754 - Middleware Technologies - Unit I

Summary Ø The following concepts have been covered § § § § Evolution of client / server architecture Client / Server architecture Characteristics of client / server model Different types of servers Client / server on the Internet Different types of client/server models Advantages and Disadvantages of Client/Server Architecture AU Distance Education – DMC 1754 - Middleware Technologies - Unit I