Presentation is loading. Please wait.

Presentation is loading. Please wait.

Chapter 6: Client/Server and Intranet Computing

Similar presentations


Presentation on theme: "Chapter 6: Client/Server and Intranet Computing"— Presentation transcript:

1 Chapter 6: Client/Server and Intranet Computing
Business Data Communications, 6e

2 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

3 Client/Server Terminology
Application Programming Interface (API): A set of function and call programs that allow clients and servers to intercommunicate. Client: A networked information requester (usually a PC or workstation) that can query a database and/or other information from a server. Middleware: A set of drivers, APIs, or other software that improves connectivity between a client application and a server. Relational Database: A database in which information access is limited to the selection of rows that satisfy all search criteria. Server: A computer, usually a high-powered workstation or a mainframe, that houses information for manipulation by networked clients. Structured Query Language (SQL): A language developed by IBM and standardized by ANSI for addressing, creating, updating, or querying relational databases.

4 Client-Server Environment

5 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

6 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

7 Classes of Client-Server Applications
Host-based processing Server-based processing Client-based processing Cooperative processing “Thick client” vs “Thin server”

8 3-Tier Client/Server Architecture

9 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).

10 Middleware Architecture

11 Logical View of Middleware

12 Basic Message Passing Primitives

13 Message Passing Issues
Reliability vs Unreliability Reliable facilities guarantee delivery, provide error-checking, 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

14 Remote Procedure Call Mechanism

15 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

16 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

17 Intranets Implementation of Internet-based technologies within an organization, rather than for global connectivity Immensely successful in corporate computing contexts

18 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

19 The Intranet Web Web Content Web/Database Connectivity Electronic Mail
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

20 Corporate Intranet Example

21 Web/Database Connectivity
Advantages Ease of administration Deployment Development speed Flexible information presentation Disadvantages Limited functionality Stateless operation makes tracking difficult

22 Intranet Webs vs Traditional Client/Server
Client/Server Disadvantages Include: 1. Long development cycles 2. Difficulty in partitioning applications, and modifying based on user feedback 3. Effort in distributing upgrades to clients 4. Difficult in scaling servers to respond to increased load 5. Continuous requirement for more powerful desktop machines

23 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

24 Extranets 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

25 Advantages of Extranets
Reduced costs Coordination Customer Satisfaction Expedited communication

26 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

27 Service Oriented Architecture
Client/server architecture utilized widely by enterprise systems Business functions consist of modular structures

28 SOA Architectural Elements
Service provider: network node that provides a service interface for a software asset that manages a specific set of tasks. Service requestor: network node that discovers and invokes other software services. Service broker: specific kind of service provider that acts as a registry and allows lookup of service provider interfaces and service locations.

29 Key Characterisitics for Effective Services Use
Coarse-grained Interface-based design Discoverable Single Instance Loosely Coupled Asynchronous

30 SOA Example


Download ppt "Chapter 6: Client/Server and Intranet Computing"

Similar presentations


Ads by Google