Explain the concept of client-server architecture. How is it different than File sharing Architecture? Explain different types of client-server architectures.
Ans
Client-server is a computing architecture which separates a
client from a server, and is almost always implemented over a computer network.
Each client or server connected to a network can also be referred to as a node.
The most basic type of client-server architecture employs only two types of
nodes: clients and servers. This type of architecture is sometimes referred to
as two-tier. It allows devices to share files and resources.
Each instance of the client software can send data requests
to one or more connected servers. In turn, the servers can accept these
requests, process them, and return the requested information to the client.
Although this concept can be applied for a variety of reasons to many different
kinds of applications, the architecture remains fundamentally the same.
These days, clients are most often web browsers, although
that has not always been the case. Servers typically include web servers,
database servers and mail servers. Online gaming is usually client-server too.
In the specific case of MMORPG, the servers are typically operated by the
company selling the game; for other games one of the players will act as the
host by setting his game in server mode.
Comparison :
file sharing architecture (is not client /server
architecture) the original pc network were based on file sharing architecture
where tbe server downloads files from the shared location to desktop.work if
shared usage is low.update conntent is low.data to be transferred is low . as
the result of limitation of file sharing architecture ,the client server
architecture emerged. it introduce darabase server to replace the file server.
using DBMS data base managment system. user required can directly answerd .the
client server architecture reduce ndtwork traffic and improve multi-user
updating.
Client Server Architecture Types
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.
Multi-tiered architecture
Some designs are more sophisticated and consist of three different kinds of
nodes: clients, application servers which process data for the clients and
database servers which store data for the application servers. This
configuration is called three-tier architecture, and is the most commonly used
type of client-server architecture. Designs that contain more than two tiers
are referred to as multi-tiered or n-tiered
4-tier Architecture
In a 4-tier architecture, all of the data storage and
retrieval processes are logically and usually physically located on a single
tier. A 4-tier architecture allows an unlimited number of programs to run
simultaneously, send information to one another, use different protocols to
communicate, and interact concurrently. This allows for a much more powerful
application, providing many different services to many different clients. In
this application we will have following 4-Tiers
1. Business Object [BO]
2. Business Access Layer [BAL]
3. Data Access Layer [DAL]
4. UI (4-Tier) folder [UI]
No comments:
Post a Comment