Client Server Architecture
Client Server Architecture
H.R.SHRUTI
CONTENTS
MEANING OF CLIENT-SERVER. TYPES OF CLIENT-SERVER. - TWO-TIER ARCHITECTURE. - THREE-TIER ARCHITECTURE. ADVANTAGES. DISADVANTAGES.
Client-server architecture is a distributed, cooperative , processing environment wherein the entire task is divided between 2 systems, one acting as a client and another as server. Functions such as email exchange, web access and database access, are built on the clientserver model.
Client : system which makes a request. Server : system which processes the request and serves the client by offering the request. A server machine is a host that is running one or more server programs which share its resources with clients. A client does not share any of its resources, but requests a server's content or service function. Clients therefore initiate communication sessions with servers which await (listen to) incoming requests.
CONS:
1. Complex application rules difficult to implement in database server requires more code for the client. 2. Complex application rules difficult to implement in client and have poor performance. 3. Changes to business logic not automatically enforced by a server changes require new client side software to be distributed and installed 4. Not portable to other database server platforms.
2. THREE-TIER ARCHITECTURE:
Also called as N-tier architecture. There are three basic software components of client-server: Front-end software : connect to servers , submit requests and receive processed information result. Middleware : software that resides between client and server to facilitate communication. Server software
This is the topmost level of the application. It communicates with other tiers by outputting results to the browser/client tier and all other tiers in the network. Data entry,forms creation,windowing,querying,reporting. Rule based processing on command from client and fetching data from database. Here information is stored and retrieved. This tier keeps data neutral and independent from application servers or business.All database management functions and serving the needs of clients and application servers.
Database server(tier 1)
CLIENT-SERVER ARCHITECTURE
Divides Application Processing across multiple machines. Non-critical data and functions on client while critical functions in server. Reduces Data Replication - Data stored on the servers. Optimizes the Server for data processing and storage (e.g., large amount of memory and disk space). Optimizes Client Workstations for data input and presentation (e.g., graphics and mouse support). Sales Horizontally Multiple servers, each server having capabilities and processing power, can be added to distribute processing load. Scales Vertically - Can be moved to more powerful machines, such as minicomputer or a mainframe to take advantage of the larger systems performance.
DISADVANTAGES:
As the number of simultaneous client requests to a given server increases, the server can become overloaded. The clientserver paradigm lacks the robustness of a good P2P network.Under clientserver, should a critical server fail, clients requests cannot be fulfilled.
THANK YOU