WT UNIT 1 Lecture 1.5 Introduction To Client
WT UNIT 1 Lecture 1.5 Introduction To Client
In short it’s a basic need to evolve with the change of technological aspects.
“Client/server computing is the most effective source for the tools that empower
employees with authority and responsibility.”(Client/Server Architecture,2011)
What Is A Client/Server?
Client
Server
The platform provides the opportunity for users to access the business
functionality thereby exposing into risky situations since its transparent to the
underlying technology as well as to the user.
The clients and the servers are the logical entities that work together over a
network to accomplish a task.
· Integrity: Since the server code and server data is managed centrally,
maintenance cost is less and results in shared data consistency and
undependability of clients.
Advantages
The use of Structured Query Language (SQL) supports open access from all client
aspects and also transparency in network services depict that similar data is being
shared among users.
Integration of Services
Every client is given the opportunity to access corporate information via the
desktop interface eliminating the necessity to log into a terminal mode or another
processor.
Desktop tools like spreadsheet, power point presentations etc can be used to deal
with corporate data with the help of database and application servers resident on
the network to produce meaningful information.
All development tools used for client/server applications access the back-end
database server through SQL, an industry-standard data definition and access
language, helpful for consistent management of corporate data.
Rather than a single target platform this ensures database integrity with the
ability to perform updates on multiple locations enforcing quality recital and
recovery.
Easy maintenance
Security
Servers have better control access and resources to ensure that only authorized
clients can access or manipulate data and server-updates are administered
effectively.
Disadvantages-compared to peer-peer networks
Overloaded servers
When there are frequent simultaneous client requests, servers severely get
overloaded, forming traffic congestion.
But in a P2P network adding more nodes will increase its bandwidth since it’s
calculated as the sum of bandwidths of each node in the network.
Since its centralized if a critical server fails, client requests are not accomplished.
Therefore client/server lacks robustness of a good P2P network (resources are
distributed among many nodes).
Clients are basically machines or workstations which are dependent on servers for
resources, data and devices (Client/Server Architectures,2011).
(Client/Server Architectures,2011).
Implementation methods and their applications
Two tier software architectures were built in 1980’s based on the file server
software architectural behavior projected mainly to improve usability through the
support of form based user-friendly interfaces. It also provides increased
scalability via supporting upto 100 users though the file server model supports
only dozen of users. Often corporate data can be shared over homogenous
environment enhancing flexible usage.
· User System Interface (session, text and dialog input, display management
services)
The application logic can reside on client-side, within a user interface or server-
side within a database independently or on both sides. These applications can be
simply built using visual builder tools helpful in developing applications for small-
scale groupware entitled for decision support systems and in the creation of web
publishing applications (Client/Server Architectures, 2011).
Characteristics
In this model the client is capable of communicating directly with the server
application with no presence of an intermediate application (Bhuvana, 2006).
Usually the Business logic is contributed towards the server or the client.
· Fat Server with Thin Client scenario is when the business logic is attached to
the client (Bhuvana, 2006).
· Fat Client with Thin Server scenario is when the business logic is attached to
the corporate server (Bhuvana, 2006).
The Procedure in which the client application interacts with the server is achieved
through the usage of a database bridge known as Application Programming
Interface (API) (Bhuvana, 2006). Commonly used API’s include JDBC- as Java
Database Connectivity.
When considering the applications of the 2-tier model we often come across
classic client/server interactions where client refers to a custom application
developed in a language like Delphi or Visual Basic whereas the server is a
database engine like SQL Server, Postgres or Oracle, e.g- Library and Lab
Reservation Systems where the UI has direct communication with the database
server (Chapple, 2011).
Also due to the fact that majority of web applications conclude no separation of
business logic form presentation and application servers they are also considered
as 2-tier applications using PHP, ASP, ASP.Net etc to connect to the databases via
connector objects like ADO, ADO.Net or proprietary connectors (Dilettante, 2010).
The 3-tier software model was introduced in 1990’s as a remedy for the
limitations in 2-tier architecture. In this model a third tier/layer is engaged, known
as the middle tier server (Application tier/business logic tier), located between
the Data Management (server) and the User Interface (client) constituents, mainly
to perform corporate business logic and regulations through Process
Management by accommodating hundreds of users (comparatively 2-tier model
has user base of 100) to offer functionalities as queuing, application execution,
and database staging (Client/Server Architectures,2011).
This offers trouble-free deployment over the network and can be managed well
due to the centralized behavior of servers. The protocol of communication
between client/server is as follows;
The client calls for the business logic on the server, the business logic on the
behalf of the client accesses the database (Client/Server Architectures,2011).
Presentation Tier - Uses a business tier driven interface with classes and objects,
e.g- in ASP.NET comprises of objects like ASPX pages, user and server controls etc.
(Yang 2004)
Middle Tier (Business Logic tier) - This basically acts as an intermediate in the
communication between presentation and data tier by retrieving modifying data
from the database according to business logic and forwarding it to the
presentation layer to display results to the user.
Often the client request balancing is done via tools as ORB and Transaction
processing-TP.
In the case of ADO.NET it uses SqlClient or OleDb objects to retrieve and modify
data from SQL server or Access, by forwarding the information to the
presentation layer with DataReader or Dataset object, or a custom collection
object (Yang, 2004).