CLIENT SERVER
TECHNOLOGY
Client: The client is a computer that requests
service from the server. The type of services that
client request is taking the print, making a phone
call, fetching data from Google.com or any other
website.
Server: A server is a computer that provides
services to the client computer. A server might be
a web server of Google, print server, database
server, file server and fax server.
CLIENT SERVER
In
TECHNOLOGY
client server computing, the clients
requests a resource and the server provides
that resource. A server may serve multiple
clients at the same time while a client is in
contact with only one server. Both the client
and server usually communicate via a
computer network but sometimes they may
reside in the same system.
Evolution of Client
Server Computing
Evolutionmeans growth of networking.
Various reasons can be broadly categorized
into:
◦ Hardware Trends
◦ Software Trends
◦ Networking Trends
Hardware Trends can be further divided into
following:
Power(Speed)
Chips
Memory
Storage devices
Power:
The power of desktop machines has grown
exponentially from 8
MIPS(million instructions per second) to 80 MIPS.
Chips:
In the earliest times of Client/Server Technology,
various microchips were available. Some are Intel 386
& 486.
The power of these chips is increasing rapidly.
Now micro processor are available in ghz such as
Memory(RAM)
The capacity of memory has been increased time by
time.
The evolution started with only 1 megabit chip in 1986
Now it is available in Megabyte, gigabyte, terabyte
also.
EDO-Extended Data output(P1)
SD-Static Dynamic(P2 & P3)
DDR-Dual dynamic RAM(P4)
RD-(Rhombus Dynamic)(P4)
Computer’s Storage
Unit:
Software Trends can be further divided into
following:
GUI Concepts
RDBMS
Multi Threading Processing
GUI Concepts:
GUI is Graphical User Interface
WYSWYG: What you see is what you get.
It gives icons, cursors, Windows/ Frames, Buttons
etc.
In GUI Environment user does not need or require
to have a knowledge of commands.
RDBMS:
RDBMS Stands for Relational database
management system.
Manage & maintain large databases.
Data is stored in tabular format in the form of rows
& columns.
Oracle , FoxPro, Sybase are few examples of
RDBMS.
Multi Threading Processing
A thread is the smallest unit of process.
DOS can execute only one process(thread) at a time.
Windows can supports multiple threads of execution.
Eg. One thread could be controlling the printer, one
the keyboard I/O and another executing some other
work.
Networking Trends
To connect two or more than two computers for
data or device sharing is known as networking.
When two or more computers are connected in
such a way that they are able to share resources,
data or even hardware with each other
An example of a network is the Internet ,which
connects millions of people all over the world.
Classification of Computer Networks
NETWORK
LAN MAN WAN
Classification of Computer Networks
NETWORK
LAN MAN WAN
Local Area Network
•Usually privately owned.
•A network for a single office, building, or
campus
•It can be wired or wireless.
•Examples of LAN are networking in a
home, school, library, laboratory, college,
office, etc.
Metropolitan Area Network
•It is a bigger version of LAN.
•A network for a entire city or a town.
•It can be public or privately owned
network.
•Examples of MAN: Cable television
network that spans over the whole city.
Wide Area Network
•It is the largest spread network.
• It spans over very large-distances such as
a country, continent or even the whole
globe.
•A WAN may include various Local and
Metropolitan Area Network.
•Examples of WAN :Internet
History Of Networking
In 1969,the ARPA(Advanced research projects
agency) of the U.S Department of defense
established ARPAnet ,an Experimental four
computer Network.
By 1971,ARPAnet comprised almost two dozen
sites.
By1974 that numbers has grown to 62,& by 1981
ARPAnet consists of more than 200 sites.
In1980,another network called CSRnet -Computer
Science research network was linked to ARPAnet.
CSRnet was created to connect several
independent networks.
This was the birth of internet & networking.
ARPAnet was finally shut down in 1989.
Networks connected together is known as
“INTERNET”.
Need & Motivation for Client/Server
Approach
Connectivity.
Sharing Devices.
User Productivity.
Flexibility & Scalability.
Resource Utilization.
Centralized Control.
Faster Delivery of System.
Reduction in Network Traffic.
Connectivity:
Accessing a remote computer through
Network.
File sharing
Resource Sharing
Remote Accessing
Sharing Devices:
In CST we share different devices.
Sharing of resources is done through
Networking.
Centralized control
Centralized facility is one in which data is
transmitted through channel.
CST allows facilities to combine centralized &
decentralized Architectures.
Faster Delivery of System
Workstation environment, powerful
Multitasking Availability, Single user database
and integrated testing tools.
Server application functionality ,database &
network services is transparent & almost
automatic.
Reduction in network traffic
Excessivenetwork traffic is one of the most
common causes of poor system performance.
Designers take special care to avoid such
situation.
InCST it is possible to reduce the network traffic
& provide frequent transmission of data between
computers through routers and fiber optic cable.
Client Server Environment
Client Server is a network architecture.
Components: The client & the server
Clients run on application using GUI.
Through this application client can request
the server.
Server accepts the request & responds.
Servers are classified as web server , File
server, Mail servers etc.
There are mainly three types of Client server
architecture:
One Tier Architecture (Single Tier
Architecture)
Two Tier Architecture
Three Tier Architecture
1-Tier Architecture
1 Tier Architecture is the simplest architecture
of Database in which the client, server, and
Database all reside on the same machine.
A simple one tier architecture example would be
anytime you install a Database in your system and
access it to practice SQL queries.
But such architecture is rarely used in production.
2-Tier Architecture
A2 Tier Architecture is a architecture where the
presentation layer runs on a client (PC, Mobile,
Tablet, etc.)
where data is stored on a server called the
second tier.
Two tier architecture provides added security as
it is not exposed to the end-user directly. It also
provides direct and faster communication.
2-Tier Architecture
Two Tier Architecture Example:
A Contact Management System created using MS- Access.
Advantages:
Easy to maintain and modification is bit easy
Communication is faster
Disadvantages:
Intwo tier architecture application performance will be
degrade upon increasing the users.
Cost-ineffective
3-Tier Architecture
A 3 Tier Architecture is the most popular
client server architecture in which the
development and maintenance of functional
processes, logic, data access, data storage,
and user interface is done independently as
separate modules.
Three Tier architecture contains a presentation
layer, an application layer, and a database
server.
3-Tier Architecture
A 3-tier architecture has the following layers:
Presentation layer (your PC, Tablet, Mobile, etc.)
Application layer (server)
Database Server
The Application layer resides between the user
and the DBMS, which is responsible for
communicating the user’s request to the DBMS
system and send the response from the DBMS to
3-Tier Architecture
Example –any large website on internet.
Advantages:
Performance – Because the Presentation tier can
cache requests, network utilization is minimized,
and the load is reduced on the Application and
Data tiers.
Better Re-use
Improve Data Integrity
Improved Security – Client is not direct access to
database.
Easy to maintain and modification is bit easy,
won’t affect other modules
In three tier architecture application performance
is good.
Disadvantages:
Increase Complexity/Effort
Characterization of Client Server
Computing
1. Components of Client Server Computing
There are mainly three components:
1. The Client
2. The Server
3. The Network
The
Client
Client is the Desktop Machine.
Network sends the request to the server.
Accepts result from server and passes result
back to the client.
Client may perform some application Logic.
The Server
Server machine is designed for server
functionality.
Increased memory capabilities.
Increased Storage capabilities.
Increased processing power through multi
processing technology.
The Server
Improved Reliability with built in reliability
features such as
◦ Uninterruptible power supply(UPS)
◦ Fault Tolerance.
◦ Disk Mirroring.
Disk
Mirroring
Disk mirroring is a technique used to protect a
computer system from loss of data and other
potential losses due to disk failures.
In this technique, the data is duplicated by being
written to two or more identical hard drives, all of
which are connected to one disk controller card.
If one hard drive fails, the data can be retrieved
from the other mirrored hard drives.
Disk mirroring is a form of disk backup in
which anything that is written to a disk is
simultaneously written to a second disk.
This creates fault tolerance in the critical
storage systems. If a physical hardware
failure occurs in a disk system, the data is not
lost, as the other hard disk contains an exact
copy of that data.
Mirroring can be either hardware or software
based.
The Server
Reliability
Availability
Flexibility
Reliability:
Servermachine is considered as a brain of
networking.
Directly or indirectly controls the whole network.
Responsible for speed & performance of the
network.
The reliability is checked by the fact that how often
does it fail.
what is the mean time between failures?
Does it perform automated regular data backup?
Does it has any strategy to deal with power
cuts?
All these questions & many important features
of server make it a reliable machine.
Availability:
Availability refers?
Systems have self healing routines.
Fault Tolerant Features.
SpecificConfiguration rebooted from a
remote site.
Flexibility & Scalability:
An organization can easily migrate to new
technologies or enhance existing
technologies with no interruption.
We can always add a new computer or
remove a computer (node)from the network.
Data access through networking is also very
easy through GUI.
The Network
2. Distributed Working
Itis a method of computer processing in
which different parts of a program run
simultaneously on two or more computers
Distributed computing is a type of parallel
computing.
3. Centralized Control
Centralized systems are systems that use
client/server architecture where one or more client
nodes are directly connected to a central server.
This is the most commonly used type of system in
many organizations where a client sends a request
to a company server and receives the response.
E.g.. Wikipedia
4. Paperless Working
Allthe work in CST can be done without
hardcopies i.e. in digital way.
We can also upgrade & modify our data as
time to time whenever required.
Examples of Client Server
Suppose you are using a computer and you
type www.google.com in the browser (e.g. Chrome). So you
are using the client computer.
Now browser sends a request to the Google web server.
Google web server responds to the browser with some data
and the browser will display that data in the browser i.e. it
displays Google website in the browser.
Ifyou make a search in Google search engine then the
browser again sends a request to the webserver of Google
and it will show search results in the browser.
Examples of Client Server
Similarly, if you make a phone call from a smartphone
then your smartphone behaves like a client and a
mobile tower or mobile exchange behave like a
server. Mobile exchange will process the call and
connects your call with the destination person.
Another example of a client server is bank and
customer. A bank has web servers that contain all
data of the customer. Now the customer is a client
and if it requests balance inquiry from his computer to
the bank website. The bank website will display
customer data by fetching data from the bank web
server.