Skip to main content

Client Server Computing

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

Popular posts from this blog

Unified Modeling Language- (UML)

Brief Background UML is a language for specifying,visualizing ,documenting and constructing the artifacts of software systems,as well as for business modeling and other non-software systems. UML has been developed by Grady  Booch, James Rumbaugh and Ivar Jacobson. Goals of UML are : To model systems using Object oriented concepts. To establish an explicit coupling to conceptual as well as executable artifacts To address the issues of scale inherent in complex , mission critical systems. To create a modeling language that can be used by humans as well as machines.  Understanding the thirteen diagrams of UML 2.x is an important part of understanding OO development. Although there is  far more to modeling than just the UML  the reality is the UML defines the standard modeling artifacts when it comes to object technology. There are three classifications of UML diagrams: Behavior diagrams . A type of diagram that depicts behavioral features of a ...

Javascript to validate Email Expression

Using  regular expressions  is probably the best way. Here's an example ( live demo ): function validateEmail ( email ) { var re = /^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/ i ; return re . test ( email ); } But keep in mind that one should not rely only upon JavaScript validation. JavaScript can easily be disabled. This should be validated on the server side as well.

Local Area Networks LAN

Why use a LAN? The two basic reasons for developing a LAN are information sharing and resource sharing. Information sharing refers to business needs that require users to access the same data files ,exchange emails or search the internet for information. Resource sharing refers to one computer sharing a hardware device (for e.g a printer) or software package with other computers on the network. The main benefit of resource sharing is cost savings, while the main benefit  of information sharing is improved decision making. image courtesy Cray Networks Dedicated Server versus Peer-to-Peer Networks A dedicated server LAN has one computer that acts as the network server. It can connect with almost any other network,handle very large databases and use sophisticated LAN software. Moreover,high -end dedicated server LANs can be interconnected easily to form enterprise wide networks or in some cases replace the host mainframe central computer. Four common types of dedi...