Professional Documents
Culture Documents
Ms. Archana Kero, Asst. Prof., Department of CA & IT, Sgrrits
Ms. Archana Kero, Asst. Prof., Department of CA & IT, Sgrrits
,
Department of CA & IT,
SGRRITS
Client-Server Computing is an environment that satisfies the
business need by appropriately allocating the application
processing between the Client & Server processes. The client
requests services from the server & the server processes the
request and returns the result to the client.
The communication mechanism is a message passing Inter
Process Communication (IPC) that enables(but does not
require) distributed placement of the client and server
processes.
Client-Server is software model of computing, not a hardware
definition.
Client-Server Computing is an environment that satisfies the
business need by appropriately allocating the application
processing between the Client & Server processes. The client
requests services from the server & the server processes the
request and returns the result to the client.
The communication mechanism is a message passing Inter
Process Communication (IPC) that enables(but does not
require) distributed placement of the client and server
processes.
Client-Server is software model of computing, not a hardware
definition.
Components In Client-Server Computing
CLIENT
It is the front end of the application that user sees & interacts with.
This user interface portion of the application validates data
entered by the user & dispatches requests to server programs.
SERVER
1. One-Tier Architecture
2. Two-Tier Architecture
3. Three-Tier Architecture
4. N-Tier Architecture
One-Tier Architecture
In this, we have various dump terminals (without any processing
capability) & without hard disk can be called as Display Terminals.
These terminals are attached to mainframes and mainframes to the
processing.
Client Client
Server Based
Programming
Thin
Client
Data &
Server Application
Local Data
& Shared Files
Application Server
Disadvantages
Not-suitable where transaction are more & heavy.
Not-suitable where business tools keep on changing.
Three-Tier Architecture
In this model, there exist a middle tier between Client & Server to
improve the overall response time. Whereas in 2-Tier model,
Client directly interacts with the server application without the
presence of any intermediate application.
3-Tier Architecture is divided into 3 layers which must be
logically separate.
Client
(User
Interface & Application Server
Running Single Database Server
Request)
Application
(Business Rule &
Processing)
Disadvantages
With the development of middleware in 3-Tier architecture, the need
of features like network management, fault tolerance, server load
balancing also increased.
Current available tools are immature & complex.
N-TIER ARCHITECTURE
Application Web
Server1 Server1
Tier1
Tier4
(eg. Browser)
Application Web
Server2 Server2
Fig. 4-Tier Architecture With Server Load Balancing
The Application program (if large) can be partitioned into various
small application logic among different server which is also a N-Tier
Architecture.
N-Tier can also be implemented by introducing 4 or more dedicated
servers for different tasks.
Eg-> Database Server, Application Server, Web Server, Point server,
File Server
5 Business
Model
4
Store
3 Application
2 Middleware
1 Infrastructure
Proposed by Martin Butler, The Chairman Of Butler Group at Butler
Group Client-Server Forum, London.
This model suggested a framework to implement Client-Server Strategies.
This model has 5 layers called VALUE ADDED LAYER.
CONCEPTUAL SCHEMA
INTERNAL SCHEMA
Stored Database
CLIENT SERVER DATABASE
ARCHITECTURE
Relational Database are mostly used by client-server application where
the server is database server.
Client application makes a database request through SQL statement & in
response to that server runs the query on it & returns the result of query
back to client. According to this architecture, all the application logic
(Software used for data analysis) is residing on the client side, while the
server is concerned with managing the database. Such Client-Server
Architecture is well suited for
Searching & sorting of large databases as it is a massive job &
requires large amount of disk space, high speed CPU, so database is
kept at server which has all these features.
Tremendous traffic on network in order to more the millions of
seconds to the clients for searching, so the server needs to have
database logic that enables it to perform efficient searches on behalf
of a client.
TYPES OF CLIENT SERVER DATABASE
ARCHITECTURE
1- Process Per Client Architecture
User interface programs + Application program run on client.
ODBC provides Application Program Interface(API) which allows
client programs to call DBMS.
A client may connect to many DBMS.
In this architecture client can also perform other function (function
of server). For eg. Data dictionary function, optimization of data,
recovery of data
This architecture requires large memory & high speed CPU to
support multitasking & to bear overhead of context switching
between process.
MAIN FEATURES:
Commonly used for web application.
Uses intermediate layer(web server or application layer).
Web connectivity software & business logic are part of application
running at application server to fetch right amount of data from database
server.
Secure application because encrypts data at server before transmission
& data is decrypted at client.
Client
Server
Data
Client Server base
Client
3- Hybrid Architecture
Provide protected environment for running user requirement without
assigning a permanent process/user.
Provide best balance between client and server.
Hybrid Architecture has 3 components:-
1. Multithreaded Network Listener assigns client connection to
dispatcher which is a process running at server.
2. Dispatcher Process run at server & main work is to keep request
(message) in a Queue called as Internal Message Queue. Dispatcher
also send result(i.e. response from server) back to client.
3. Worker Process are responsible for picking work from message queue
& execute that work & finally places the response(from server) to
output message queue.
L D
I A
S T
T A
E B
N A
E S
R E
Dispatch Server Web Server OR
Pool Process Application
Pool Server
[Shared]
Advantages Of Client-Server Database:-
1. Intelligent Processing:-Processing of data is divided between server
& client. Server performs concurrency control, data searching &
data manipulation. Clients perform business processing functions.
2. Improves Concurrency Control Problem:- RDBMS provides
intelligent lock management system which allows multiple users to
search & read searched files concurrently.
3. Transaction Processing:- Database server adds a complete
transaction processing system[i.e. begin, commit & rollback
transactions] to applications.
4. Referential Integrity & Database Constraints:- To verify & validate
the data in database & maintain relationships between records.
5. Security:- Provides security by giving permissions to application for
accessing the database.
DISADVANTAGES
1. Implementation Is Complex as one needs to deal with middleware &
network.
2. Additional Burden On Database Server to handle concurrency control.
3. If Network Fails Or Has Some Communication Problem, the database
server stands aloof.
Single System Image(SSI)
A Single System Image is the property of the system that hides the
heterogeneous & distributed nature of the available resources &
presents them to user & application as a single unified computing
resource.
SSI means that users have a globalized view of the resources available
to them irrespective of the node to which they are physically associated.
CLIENT :
Client is request program or process send request server via
network. . Client manage local resource keyboard local HD ,
Monitor etc.
Roll of client to business service provided by one or more server.
Role of client is produce the output in a presentable format.
Some time client act as server.
e . g- In a LAN a client (node) can act as client for the user but at
server time act as print server for other multiple user.
Client provide cost effective support for GUI.
SERVICE OF CLIENT:
[A] Request of service
[B] RPC[Remote Procedure Call]
[C] Fax and print service
[D] Window service
[F] Remote Boot Service
[G] Utility Server
[H] Message Service
[I] Application Service
[J] Database Service
[A] Request Of Service:
Sends request to server of service and at server HD( is remote HD
not local) .Using network operating system(NOI).If provide
service called redirection in which this service intercepts client
operating system and than we directs them to operating system.
[B] RPC[Remote procedure call]:
It is protocol using which one program request a service function a
another program located a another program located in different
machine specially both machine one at heterogeneous
environment .
Many RPC provide data translation service also
E g - Translation of the data between machine with different
physical data format.
High quality printer , plotter computer generated fax service can
be given by client.
Request of print are put in a queue.
Request can be issued even if resource like printer is busy.
Status of print queue can be seen by clients . fax and print
service can be given at save time.
local procedure
calls Local response
Local
Response
Application APPLICATION
RPC RPC
STUB STUB
TRANSPORT TRANSPORT
PROCEDURE
NETWORK NETWORK
INVOCATION &
RETURN
communication) mechanism allows user to communicate directly.
Tools of RPC comprises of a language a compiler to produce
portable source code.
Some runtime facilities to make the system and network protocol
Transparent to the application procedure.
METHOD FOR EXCHANGING INFORMATION
BETWEEN TWO APPLICATION
1- DDE(dynamic data exchange ):
It introduce in 1979 with a release of windows 2.0 as one of the
method for IPC . Using this one program can communicate
with another running program or one program can control
another program s.
DDE is a still working with a current versions of windows
operating system . The primary function is to allow window
application two share data.
F . e- MS Excel can be link to an HTML document which run at
browser .DDE has mechanism that allows two way passing of
data between the application . To or more application can
exchange data the same time .just like MS Visual basic
application can be linked to Excel sheet any changes made to
visual basic is also reflected in Excel sheet.
1-Name of the Application
2-Name of the File
3- Name of the Item
There are various inbuilt function used by DDE .
1-DDE Advise()- it is used to link an item in the server
application link can be automatic or notified.
2-DDE Initiate()- it establish the channel between clients
application and DDE server. If channel is successful y
establish . This system called returns positive integer which
acts as channel number.
This system call works only when channel is established to
DDE initiate .if DDE request (for some data ) is fullfill the
system call returns true otherwise return false.
4- DDE EXCUTE()-
This system call seen at server end and after DDE initiate and
DDE request().
5- DDE LASTERROR()-
To know the cause of error if any one of the DDE Function or
system call fails. This system calls return zero if all DDE
function are successfully executed otherwise if return a no the
which indicates the type of error.
[i] It is also one of the method for IPC where two different
application running on two different machine can exchange
data or document.
[ii] OLE was released in 1990’s by micro soft in their easily
version of windows 95, windows 98.
[iii] OLE server and client can communicate using system
libraries using virtual function. Tables which consist of
structure of function pointer to the libraries .
[iv] OLE is capable of maintaining active likes between the
document - OLESUR . DLL(Client end library)
OLECTE.DLL (server ends).
1- Object-: It means individual or discrete unit of data supplied
by an application for e g: MS-excel application has many types
of object like worksheet chart machine call or a range of cell.
2- Linking-: The object means that particular object to supplied
to me application when we link the object to me application
we can access the data and can also change it. The object
brings only snapshot of the data and not complete data.
3- Embedding-: Embedding means inserting one file to into
another.
F . e- visual basic application running at the client one access
MS excel worksheet .but change made through visual basic to
Excel sheet do not affect the actual file.
Client running photo editing software . Photo-shop can
access a object (cartoon bmp) made by another application
for e g- paint brush but change made in the object by photo
shop application do not effect the original object . There are
2 version of OLE.
1- OLE 1.0 2- OLE 2.0
1- OLE 1.0-: Released in 1990’s in early version of MS –
Windows along with DDE . DDE was limited amount of the
data between the two application.
Whereas OLE has the capability to transfer complete
document between the two application.
The OLE 1.0 later on become architecture for COM component
object module and DCOM.
OLE 2.0 was some as of 1.0 but it was implemented on the top
of COM instead of using virtual function table.