You are on page 1of 24

CLIENT / SERVER ARCHITECTURE

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 DMC1754 - 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 DMC1754 - Middleware Technologies - Unit I

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 DMC1754 - 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 DMC1754 - 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 DMC1754 - Middleware Technologies - Unit I

CLIENT / SERVER Transaction Processing


4

CLIENT

2
MAIN SERVER

DATABASE SERVER

AU Distance Education DMC1754 - 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 DMC1754 - Middleware Technologies - Unit I

Client / Server Model Static HTML Pages

AU Distance Education DMC1754 - Middleware Technologies - Unit I

Client / Server Model Dynamic HTML Pages

AU Distance Education DMC1754 - Middleware Technologies - Unit I

Client / Server Model Server side Scripting

AU Distance Education DMC1754 - Middleware Technologies - Unit I

FILE SERVER

AU Distance Education DMC1754 - 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 DMC1754 - 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 DMC1754 - Middleware Technologies - Unit I

Database Server - Example


Software Project Team sharing a database

AU Distance Education DMC1754 - 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 DMC1754 - Middleware Technologies - Unit I

Two-Tier Architecture - Internet

AU Distance Education DMC1754 - Middleware Technologies - Unit I

Three -Tier Architecture - Internet

AU Distance Education DMC1754 - Middleware Technologies - Unit I

Multi -Tier Architecture

AU Distance Education DMC1754 - Middleware Technologies - Unit I

Multi -Tier Architecture

AU Distance Education DMC1754 - Middleware Technologies - Unit I

Multi -Tier Architecture

AU Distance Education DMC1754 - 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 DMC1754 - 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 clients 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 DMC1754 - Middleware Technologies - Unit I

In computing, a file server is a computer attached to a network that has the primary purpose of providing a location for shared disk access, i.e. shared storage of computer files (such as documents, sound files, photographs, movies, images, databases, etc.) that can be accessed by the workstations that are attached to the same computer network. The term server highlights the role of the machine in the clientserver scheme, where the clients are the workstations using the storage. A file server is not intended to perform computational tasks, and does not run programs on behalf of its clients. It is designed primarily to enable the storage and retrieval of data while the computation is carried out by the workstations. ile servers are commonly found in schools and offices, where users use a LAN to connect their client computers. Types of file servers A file server may be dedicated or non-dedicated. A dedicated server is designed specifically for use as a file server, with workstations attached for reading and writing files and databases. File servers may also be categorized by the method of access: Internet file servers are frequently accessed by File Transfer Protocol (FTP) or by HTTP (but are different from web servers, that often provide dynamic web content in addition to static files). Servers on a LAN are usually accessed by SMB/CIFS protocol (Windows and Unix-like) or NFS protocol (Unix-like systems). Database servers, that provide access to a shared database via a database device driver, are not regarded as file servers.
AU Distance Education DMC1754 - Middleware Technologies - Unit I

You might also like