CLIENT
SERVER TECHNOLOGY |
|
By
M.JEHAN
|
Example Diagrams |
|
• Dallasbased American airlines
Decision Technologies cut
their
computing budget by 90%from $5 million to
under
$500,000
• As the result of
an 18 month pjt that created an open
systems network.
• Built with $4.5 million
worth of multi vendor UNIX based
hardware and software.
• The company develops systems
for companies such as
American
Airlines, Lufthansa German Airlines, Ryder
Truck Rental and Royal Caribbean Cruise Lines.
• Consolidated Insurance Group
in Wilmington, Delaware,
reduced
capital expenses from $1 million to $300,000
and
operating
expenses from $2.5 million to $500,000 in
the
first year after replacing its headquarters based IBM 3090
mainframe and support staff 30 with 7 micro based servers
supported by a staff 10.
|
|
Overview of client server computing
|
|
|
|
Contd..
|
|
• When United Airlines Inc.
converted to a client
/server
environment from mainframe computer
environment,
the company saved millions in
computer
costs and improved flight schedules for
its
pilots, which is predicted to save nearly
$1.5
million a year
• How are these organizations
achieving such
savings?
|
|
Client /Server Computing
|
|
What is Client/Server Computing
|
|
• Client/Server computing uses
local processing
power the power of the desk top platform.
• Simple defn. Server software accepts requests
for
data from client software and returns the
result to the client.
• The client manipulates the
data and presents
the results to the user.
• Tech defn.Most of the
application processing
is done on a programmable desktop computer,
which
obtains application services from
another
computer in a master/slave
configuration.
contd..
|
|
Contd..
|
|
• The use of open systems
(hardware,
software,
operating systems, databases
and
networks) enhances client/server
computing.
|
|
Application Tasks
|
|
An application can be broken into six tasks:
• User Interface what are user actually sees
• Presentation Logic what happens when the
user interacts with the form on the screen
• Application logic
• Data requests and results acceptance
• Data integrity such as validation, security,
completeness
• Physical data management such as update,
retrieval, deletion, and addition.
|
Query Language Architecture |
|
• Query
languages to support update, create,
retrieve and delete fns as in the above fig.
|
Original Client/Server Applications |
|
• GUI require
a great deal of processing power to
create the screen the user sees.
• As app.
Tasks were split host and the screen
generating desktop m/c as in the fig.
|
Distribution of processing in
client/server model
|
|
• Distribution
of processing between the client and
server is accommodated by the client/server
model.
|
|
Rightsizing
|
|
• Client/server
technology evolves, the battle cry
is now rightsizing- design new applications
for
the platform they are best suited for, opposed
to
using a default placement.
• The client/server
model allows the app to be split
into tasks and those tasks performed on
individual platforms.
• Developers
review all the tasks within an
application and determine whether each task
is
best suited for processing on the server or
on
the client.
• Determining
how the tasks are split can be the
major factor in the success or failure of
client/server app.Contd…
|
|
• Some variations
on this theme are:
• Downsizing: A host based app. Is downsized
when it is reengineered to run in a smaller
or
LAN based environment.
• Upsizing: App. that haveoutgrown their
environment are re-engineered to run in a larger
environment.
|
|
– Increasing
memory and storage on the server
– Swapping
more powerful processor into the server.
– Adding
processors to the server
|
|
• Smartsizing: Technology based smart sizing
affects the entire organizational structure
and
involves re-engineering and redesigning the
business process.
|
Growth in installed micros and
LANs
|
|
• Dollar
Savings
|
|
Benefits
of client/server computing
|
|
– Client/server
technology allows organizations to protect current
investments by using existing equipments and
protect future
investments by using scalable, expandable products.
– Client/server
based applications can be developed in less time
than mainframe based applications.
|
|
• Increased
Productivity
|
|
– End user Productivity
|
|
• Flexible
data access for end users was first provided by 4GLs
|
|
– Developers
productivity
|
|
• Developers
can be using client/server development tools
• Most C/S
tools make use of object oriented technology
|
|
•
|
|
Flexibility
and Scalability
|
|
– Adding
new components or replacing existing ones is as straight
forward
– Users
can choose their own presentation interface
|
|
• Resource
Utilization
|
|
– C/S architecture
is designed to use LAN technology efficiently,
minimizing potential bottlenecks
|
• Centralized Control |
|
– Full circle
in the architecture of IS facilities
|
|
Centralized
and decentralized control
|
|
• Decentralized
portion of the computer system consists of
the processing done in the client and is the
responsibility
of business end user.
• The centralized
portion of the responsibility of IS
professionals-link to the server
|
|
• Open Systems
|
|
– Client/Server
computing to be effective, multiple
environments must be supported.
– When applications
are right sized, it is important that
there be connectivity among the components of
the
platform
– There
must be support for multiple hardware vendors,
multiple GUI platforms, multiple OS, Multiple
DBMS,
Multiple communication protocols and multiple
LAN
OS
– The benefits
of open systems- Interoperability and
Portability
|
|
Evolution
of Client/Server Computing
|
|
• Hardware
Trends
|
|
– Power
– Chips
– Memory
– 40MB hard
drive is standard on an entry level
micro.
|
|
• Multiple
disk drivers.
|
Capacities of processors |
|
• Software
Trends
|
|
– Relational
Databases
|
|
• Multiple
structures with multiple management
techniques
|
|
– GUIs
|
|
• MS-Windows,
openLook and etc.
|
|
– Multi
threaded Processing
|
|
• Thread
is a process or an execution
• DOS can
execute only one process (thread) at a
time.
• MS LAN
Mgr Network OS – supports multiple
threads of execution.
• One thread
could controlling the printer, one the
keyboard I/O another executing app. Code.
|
|
– Continuing
Evolution
|
|
• Product
that generate GUIs have some intelligence
about interfaces.
|
|
• Evolution of Operating Systems
|
|
– Micro
operating systems evolve, there should
be some common capabilities. These include
|
|
• Portability
in the underlying kernel and app.
Programming interfaces
• Use of
32 bit architecture
• Support
for symmetric multiprocessing hardware
• Extensions
for multimedia and pen based
computing
• Portable
OS interface for UNIX
|
|
• Networking Trends
|
|
– LAN based
implementation
– Token
ring running LAN manager
|
|
• Business Consideration
|
|
– Dept.
need more than one database.
– Dealing
with voice, scanned images, text and
graphic images.
|
|
Overview
of Client/Server
Applications
|
|
• A client/server
application has three
components: a Client, a server and a
network
• Each of
these components has a
hardware and a software component.
|
|
Components of the
Client/Server
Applications
|
|
• Servers
-perform the routine.
• Clients-
front ends
|
|
– To many
users client is the “System”
|
|
• The data
management software on the
server is responsible for keeping the data
“Safe and Sound”.
• Some org.
have applications where clients
need to maintain concurrent connections
with more than one server-- many-to-many
relationship.
|
Components of Client/server computing |
• The client hardware is the desktop
m/c that runs client
software.
• It could
be a micro or a workstation
• The client
software formulates the data requests and
passes the requests to the network software.
• This s/w
send the request to the server , accepts the
result from the server and passes the result
to the client
software.
• The presentation
component produces the interface that
the user views and interact with.
|
|
The Client
|
|
The Server
|
|
• A server
is the machine that runs data
management software
• Compared
to a desktop micro server
hardware
|
|
– increased
memory capabilities;
– increased
storage capabilities;
– increased
power;
– parallel
processors;
– improved
cycle times;
– and improved
reliability
|
|
• When evaluating
server hardware, the following
measures should be kept in mind:
• Reliability-
How often does it fail? What is the
mean time between failures?
• Availability-
How quickly does the system come
back into service after a failure? To assure
high
availability, some systems have self healing
routines, continuous processors, fault –tolerant
hardware , alarms to high light problems before
become serious.
• Flexibility
and Scalability. How easily can the
server be expanded as processing needs grow?
• A server
has operating system software, data
management software and a portion of the
network software
|
|
The Network
|
|
• The network
hardware is the cabling, communicating
cards and the devices that link the server and
the clients.
• Connections
must allow servers to access other servers
and for users (clients) to access data on any
network
node
• The connection
devices, such as routers and wire hubs.
• The communication
and data flow over the network is
managed and maintained by the network software.
• The network
OS manages the network related input
/output processes of the server.
|
|
Classes
of Client/Server
Applications
|
|
• 3 levels:-
|
|
– Host based
processing
– Client-Based
Processing
– Cooperative
Processing
|
|
• Host-Based
Processing
|
|
– Most client/server
applications has a presentation
layer running on the desktop machine with all
app.
Processing running on the server/host.
– Presentation
layer provides the user with an easy to
use interface.
– The processing
power of the desktop m/c is used to
produce this interface, which requires a great
deal of
m/c resources
– Host based
processing applications require less
functionality on the client.
– Host based
processing does not permit organizations
to re-think the business process
|
Classes of Client/Server applications |
|
• Client-based
Processing
|
|
– Client/server
applications puts all the app.
Logic on the client m/c with the exception of
data validation routines, which are coded into
the DBMS on the server.
– Users
can access data on any node.
– Many of
the host fns –security and reliability
must be built into these new client server app.
|
|
• Cooperative
Processing
|
|
– app. Uses
a fully cooperative peer-to-peer processing
approach.
– All components
of the system are equal and can
request to provide services to each other.
– The processing
is performed where ever computing
resources (devices, CPU, and memory are available
– A single
system can act as a client for other servers
and a server for other clients.
– Data manipulation
may be performed on both the
client and the server, whichever is more appropriate.
|
|
Categories
of client/server
Applications
|
|
• Client/Serverapp.Canalsobe
categorized by their support function.
• ThearchitectureofClient/Server
computing promotes group interaction,
whether it is messages, mail, shared data,
or shared app.
• users
of an application can be anywhere
on the network.
|
|
• Office
Systems
|
|
– Client/Server
computing provides a
framework for electronic communication as in
the Fig.
– Users
on LAN C can Communicate with users
on LAN A or LAN B
|
The foundation for electronic communication |
|
• Front-Ends
to Existing Systems
|
|
– Another
category of client/server app. Consists
of screen emulation systems (screen-scrapers),
which convert existing character based screens
to GUI screens.
– No changes
are made to the existing app. on
the server
– Benefits
of these systems are ease of use and
increased worker productivity.
– Existing
products facilitate building front-ends
to existing systems.
– They capture
the 3270/5250 data stream and
map it into a client based display panel.
|
• Database access |
|
– To provide
a GUI for accessing corporate data
– Query
oriented app. Provide a single window
to the data of the organization.
|
|
Query oriented
Applications
|
|
• Transaction-Processing
Applications
|
|
– Also known
as mission-critical applications, include
order entry, inventory, and point-of-sale systems.
– System
must run continuously.
|
|
• Investigative
applications
|
|
– Transaction
processing systems work with real time
data.
– Investigative
app. Are designed to support decision
makers.
– Investigative
app. Are often called Decision Support
Systems (DSS) or Executive Information Systems
(EIS).
– Ref. next
slide pic.
|
Snapshots of Data for investigative
applications |
|
Understanding
Client/Server
Computing
|
|
• Dispelling
the Myths
|
|
Many myths
promoted by Marketing literature, others are
promoted
by the press, more by omission than inclusion.
|
|
– Client/Server
Computing is Easily Implemented
– Current
Desktop Machines are sufficient
– Minimal
Training is Required
– All Data
are Relational
– Development
time is Shorter
|
|
Obstacles-Upfront
and Hidden
|
|
– Client
server computing is not the easy task that
marketing literature would have us believe.
– They are
some very real, and painful, hurdles on the
road to success
|
|
• Costs
|
|
– Cost saving
prompt organizations to consider
client/server computing
– Conservative
figures for the cost per MIPS (millions of
instructions per second) are:
– IBM Mainframe-About
$100,000
– Midrange-About
$50,000(includes some bandwidth
processors)
– Desktop-About
$300
|
|
• Mixed
Platforms
|
|
– In the
past, most org. operated homogeneous
centralized mainframe and midrange
processors and terminal n/w
– Managed
separately-independent systems
and protocol
– Today,
org have at least two micro OS,
multiple n/w OS and variety of n/w topologies.
|
|
• Maintenance
|
|
– It is
costly and time consuming
|
|
• Reliability
|
|
– H/w must
be stable and include backup units
and monitoring s/w for the system itself.
|
|
• Restructuring
Corporate Architecture
|
|
– Client/server
technology also restructures the
workflow processing.
– Electronic
data interchange (EDI) is an
example of a modification in workflow
processing.
|
|
Open Systems
and Standards
|
|
• To Business
end users, open systems mean easy access
to information
• The IEEE
– open systems offers the following definition
|
|
“A
comprehensive and consistent set of international
information
technology standards and functional standards
profiles that specify interfaces, services, and supporting formats to
accomplish
interoperability and portability of applications,
data
and people.”
Standards Areas
Four areas of client/server computing
• PlatformsDeveloped by hardware and software vendors such as
Intel chips, UNIX, and DOS with Windows.
• NetworksN/W protocols such as OSI and TCP/IP
• Middleware Between App. and the OS, includes GUIs, database,
EMail systems
• Applications Org. decide on std app. to facilitate
work group
interaction
|
|
Existing
Standards
• Currently,
there are recognized stds for server OS
environment and for network protocols
|
|
– UNIX
– POSIX-Portable Operating Interface from IEEE is a
UNIX based specification.
– TCP/IP-to connect LAN Based micros to corporate data
on a UNIX host.
– OSI- to provide a common basis for communication
– RDA and DRDA - Remote Data Access (RDA)
Architecture and Distributed Relational Database
Architecture
– Distributed
data management
|
Open Systems |
|
Components
of an open systems environment
|
|
• Factors for Success
|
|
– Identify
the business motivation for the change to
client/server computing.
– Whether
it is reduced costs, increased productivity,
or a competitive advantage, implementation of
the
new technology.
– Internetworking –LAN,WAN
– Interoperability-ability to interact
|
|
• Considering
client m/c, client s/w, n/w, n/w s/w, server
and server s/w.
|
|
– Compatible Environments- whenever possible,
avoid mixing architectures
– Perceived Benefits- ease-of use, cost saving,
response time, functionality, accessible data.
|
|
Host
|
|
•
|
|
The term
"host" is used in several contexts, in each of which it has a slightly
different
meaning: 1) In Internet protocol specifications, the term "host"
means any
computer that has full two-way access to other computers on the
Internet.
A host has a specific "local or host number" that, together with the
network
number, forms its unique IP address. If you use
Point-to-Point
Protocol to get access to your access provider, you have a
unique IP
address for the duration of any connection you make to the
Internet
and your computer is a host for that period. In this context, a "host"
is a node in a network.
2) For companies
or individuals with a Web site, a host is a computer with a
Web server
that serves the pages for one or more Web sites. A host can
also be
the company that provides that service, which is known as hosting.
3) In IBM
and perhaps other mainframe computer environments, a host is a
mainframe
computer (which is now usually referred to as a "large server"). In
this context,
the mainframe has intelligent or "dumb" workstations attached
to it that
use it as a host provider of services. (This does not mean that the
host only
has "servers" and the workstations only have "clients." The
server/client
relationship is a programming model independent of this
contextual
usage of "host.")
4) In other
contexts, the term generally means a device or program that
provides
services to some smaller or less capable device or program.
|
|
•
|
|
•
|
|
•
|















No comments:
Post a Comment