|
Information of Client/server architecture, how it works,
different types of Client/server architectures and their information.

In reference to
personal computers on a network, the term client/server was first used in the
1980s. In the late 1980s, the actual client/server model started gaining
acceptance. The client/server software architecture is a message based,
versatile and modular communications that is intended to improve flexibility,
usability, interoperability and scalability as compared to centralized,
mainframe, time sharing computing.
Client/server architecture illustrates the relationship between two computer
programs in which one program is a client, which makes a service request to
another program called as Server. Server provides service to the request. A
single machine can be act as both, a client as well as server depending on the
software configuration. Although the client/server architecture can be used
within a single computer by programs, but it is a more important idea in a
network. In a network, the client/server architecture allows efficient way to
interconnect programs that are distributed efficiently across different
locations. The common use of client/server model is in Computer transactions.
For example, if you have to check a bank account from your computer, you have to
send a request to a server program at the bank. That program process the request
and forward the request to its own client program that sends a request to a
database server at another bank computer to retrieve client balance information.
The balance is sent back to the bank data client, which in turn serves it back
to your personal computer, which displays the information of balance on your
computer.
File sharing architecture
Previously PC networks were based on file sharing architectures, where the
server is used to download files from the shared location to the desktop
environment. The client job is then run in the desktop environment. This
architectures work only if shared usage is low, update contention is low and the
volume of data to be transferred is low. In the 1990s, PC LAN (local area
network) computing changed because the capacity of the file sharing was
overwrought as the number of online user grew.
As a result of these limitations of file sharing architectures, the
client/server architecture emerged.
Client/server architecture
This approach introduced replacement of file server by database server. User
queries could be answered directly by using a relational database management
system. The client/server architecture significantly decreased network traffic
by providing a query response rather than total file transfer. It allows
multi-user updating through a GUI front end to a shared database. Remote
Procedure Calls (RPCs) or standard query language (SQL) statements are typically
used to communicate between the client and server.
The following are the examples of client/server architectures.
1) Two tier architectures
In two tier client/server architectures, the user interface is placed at user's
desktop environment and the database management system services are usually in a
server that is a more powerful machine that provides services to the many
clients. Information processing is split between the user system interface
environment and the database management server environment. The database
management server supports for stored procedures and triggers. Software vendors
provide tools to simplify development of applications for the two tier
client/server architecture.
2) Three tier architectures
The three tier architecture is introduced to overcome the drawbacks of the two
tier architecture. In the three tier architecture, a middleware is used between
the user system interface client environment and the database management server
environment. These middleware are implemented in a variety of ways such as
transaction processing monitors, message servers or application servers. The
middleware perform the function of queuing, application execution and database
staging. In addition the middleware adds scheduling and prioritization for work
in progress. The three tier client/server architecture is used to improve
performance for large number of users and also improves flexibility when
compared to the two tier approach. The drawback of three tier architectures is
that the development environment is more difficult to use than the development
of two tier applications.
i) Three tier with message server.
In this architecture, messages are processed and prioritized asynchronously.
Messages have headers that include priority information, address and
identification number. The message server links to the relational DBMS and other
data sources. Messaging systems are alternative for wireless infrastructures.
ii) Three tier with an application server
This architecture allows the main body of an application to run on a shared host
rather than in the user system interface client environment. The application
server shares business logic, computations and a data retrieval engine. In this
architecture applications are more scalable and installation costs are less on a
single server than maintaining each on a desktop client.
Uses
Client/server architectures are used in industry as well as in military. They
provide a versatile architecture that allows insertion of new technology more
readily than earlier software designs.
|