Client/Server and Intranet Computing

Download Report

Transcript Client/Server and Intranet Computing

Chapter 7:
Client/Server Computing
Business Data Communications, 5e
What is Client/Server?
•
•
•
•
Client
Server
Network
How is client/server different from other
distributed computing?
– Heavy reliance on user-friendly applications
– Emphasis on centralizing databases and management
functions
– Commitment to openness/modularity
– Networking fundamental to operation
Client-Server Environment
Why is Client-Server Different?
• Emphasis on user-friendly client
applications
• Focus on access to centralized databases
• Commitment to open and modular
applications
• Networking is fundamental to the
organization
Client/Server Applications
• Emphasis on GUI for users
• Database Example
– Database on server, applications for access on
client, “glue” (like SQL) enables requests)
– Application logic can be client-only, or split
between client and server
Classes of
Client-Server Applications
•
•
•
•
•
Host-based processing
Server-based processing
Client-based processing
Cooperative processing
“Fat client” vs “fat server”
3-Tier Client/Server Architecture
Middleware
• Standardized interfaces and protocols
between clients and back-end databases
• Hides complexity of data sources from the
end-user
• Compatible with a range of client and
server options
• All applications operate over a uniform
applications programming interface (API).
Middleware Architecture
Logical View of Middleware
Basic Message Passing
Primitives
Message Passing Issues
• Reliability vs Unreliability
– Reliable facilities guarantee delivery, provide errorchecking, retransmission, etc
– Alternatively, the message can be sent without
success/failure; reduces complexity and overhead,
passes responsibility for confirmation to application
• Blocking vs Nonblocking
– Non-blocking more efficient, but difficult to test and
debug programs
– Blocking (synchronous) retains control until
acknowledgment is received
Remote Procedure Call
Mechanism
Client/Server Binding
• Nonpersistent binding
– Does not maintain state information,
connections re-established as necessary
– Inappropriate for RPCs used frequently by
same caller
• Persistent binding
– Connection sustained until procedure return
– Useful for applications making repeated calls
to remote procedures
Object-Oriented Mechanisms
• Clients and servers ship messages between
objects.
• May rely on an underlying message or RPC
structure or be developed directly on top of
object-oriented capabilities in the operating
system
• Success depends on standardization of the object
mechanism, but competing models exist
– COM, OLE, CORBA
Intranets
• Implementation of internet-based
client/server technology within an
organization, rather than for global
connectivity
• Immensely successful in corporate
computing contexts
Advantages of Intranets
• Rapid prototyping
• Scales effectively
• Little training
required
• Can be implemented
on variety of systems
• Open architecture
allows interaction
across platforms
• Supports a range of
distributed servers
• Allows integration of
legacy systems on
client and server side
• Supports a range of
media types
• Inexpensive to
implement
The Intranet Web
• Web Content
– The web can be used to effectively distribute content
in a way that requires no new training for end-users
• Web/Database Connectivity
– Multiple tools exist to serve as middleware between
web servers and data sources
• Electronic Mail
• Network News
Web/Database Connectivity
• Advantages
–
–
–
–
Ease of administration
Deployment
Development speed
Flexible information
presentation
• Disadvantages
– Limited functionality
– Stateless operation
makes tracking
difficult
Intranet Disadvantages
• Long development cycles
• Difficulty in partitioning applications, and
modifying based on user feedback
• Effort in distributing upgrades to clients
• Difficult in scaling servers to respond to
increased load
• Continuous requirement for more powerful
desktop machines
Other Intranet Technologies
• Electronic Mail
– Closed internal mail systems (delivery
verification, etc)
– Internal mailing lists
• Network news (USENET)
– Can be adopted for internal intranet uses
The Extranet Web
• Extends the intranet concept to provide
information and services to selected
outside populations, such as customers and
suppliers
• Enables the sharing of information
between companies
• A TCP/IP enabled form of EDI
Advantages of Extranets
•
•
•
•
•
•
Reduced costs
More marketable products
Increased productivity
Enhanced profits
Reduced inventories
Faster time to market
Methods for Converting
Intranets to Extranets
• Long-distance dial-up access
• Internet access to intranet with security
• Internet access to an external server that
duplicates some of a company’s intranet data
• Internet access to an external server that
originates database queries to internal servers
• Virtual private network