Definition of Client/ Server Computing
Client /Server computing is the process and architecture allowing applications to be developed as efficiently as possible,exploiting the capabilities of personal workstation clients and intelligent server computers. A client typically uses a multiprocessing operating system with a graphical user interface called the frontend. The server is dedicated to one or more backend functions particularly the creation,management and manipulation of databases.
What is Client/ Server?
Client and Servers are seperate logical entities that work together over a network to accomplish a task. All client/server systems have the following distinguishing chatacteristics:
Service
Shared Resources
Asymmetrical Protocols
Transperancy of Location
Mix and Match
Message based exchanges
Encapsulation of Services
Scalability
Integrity
Thus client/ server characteristics allow intelligence to be distributes over a network.
Different types of Servers
File Servers
Database Servers
Transaction Servers
Object Servers
Web Servers
Groupware Servers
2-Tier Vs 3-Tier Architecture
The term tiers is used to describe the logical partitioning of an application across clients and servers.
2 -Tier
Splits the processing load in two.Majority of the application logic runs on the client,which typically sends SQL requests to a server resident database.This architecture is also called fat client because a big chunk of the application runs on the client side.
3-Tier
Splits the processing load between 1) clients that runs the graphical user interface(GUI) logic.
2) The application server running the business logic, and 3) the database or legacy application. 3-tier moves the application logic to the server which is also called fat server or thin client.
There are also N-tier applications
Example of a N-Tier architecture in .NET
Comments
Post a Comment