Handbook of Local Area Networks, 1998 Edition:LAN-based Application Development Issues and Solutions
Click Here!
Search the site:
ITLibrary
ITKnowledge
EXPERT SEARCH
Programming Languages
Databases
Security
Web Services
Network Services
Middleware
Components
Operating Systems
User Interfaces
Groupware & Collaboration
Content Management
Productivity Applications
Hardware
Fun & Games
EarthWeb sites
Crossnodes
Datamation
Developer.com
DICE
EarthWeb.com
EarthWeb Direct
ERP Hub
Gamelan
GoCertify.com
HTMLGoodies
Intranet Journal
IT Knowledge
IT Library
JavaGoodies
JARS
JavaScripts.com
open source IT
RoadCoders
Y2K Info
Previous
Table of Contents
Next
The Three-Tiered Model
The three-tiered model of client/server computing is also delineated along hardware lines. Under this model, tier 1 is a host or very large processor. Tier 2 machines are minicomputer-size servers. Tier 3 machines are PCs or workstations. This is the general hardware model for client/server architectures.
The three-tiered model (see Exhibit 6-3-11) is generally described in a hardware rather than a software context. The first generation of client/server, as noted earlier, came about because of the advent of the minicomputer. These work-group servers allowed departments within organizations to service their own requirements outside the centralized systems architecture that was prevalent at the time. The second generation of client/servers began to integrate the centralized mainframes. In the third generation, the mainframes were replaced by an enterprise backbone of large processors that were themselves integrated on their own local area network accessible to the work-group servers, and hence to their clients. The standardization of network protocols has made the three-tiered model possible.
Exhibit 6-3-11. Three-Tiered Hardware Model of Client/Server Computing
If the implementation of the client/server architecture is carried out along hardware lines, the three-tiered model creates a problem. Which platform is the best place for data, application code, and user interfaces? Those early choices could have a major impact on an organizations capability to take advantage of lower hardware costs or better hardware capabilities in the future.
If, instead, the client/server architecture is defined as a software architecture, the organizations capability to resolve these dilemmas in different ways over time as the capabilities of the hardware change is greatly enhanced. An architecture should be defined in terms of application segmentation based on current needs, taking into account that those needs can and will change over time.
The three-tiered model is a good example of a client of one server being a server to another client. The work-group server applications can be both a server and a client. To the PC client applications, work-group server applications are servers, but to the enterprise server applications they are clients. This is also known as cooperative processing. This realization can be liberating for the client/server technology architects as they can design and build services for use by background as well as interactive processes.
Cooperative Processing
Cooperative processing segments an application across many processes that may reside on multiple platforms. It is often defined, like so many of client/server technology, in the context of hardware rather than software architectures.
For processing to be done cooperatively across platforms, there must be cooperation among the various machines. However, the role of networking technologies is to provide transparent access by applications and users to different machines and devices on the network. Hence, it is the cooperation among processes that is the real challenge to developers. The transparency of the networking layers hides the cooperation between machines. Thus, again, the supposition for thinking of client/server as a software rather than a hardware architecture is validated.
Cooperative processing is concerned with optimizing segmentation of an application in the contexts of the data, application code,and user interfaces. All of each one or portions of each one may be placed on a single platform or on multiple platforms. Distributed application logic is the purest form of cooperative processing. It is also the hardest to do, because it requires the use of most (if not all) of the technologies that are available for designing client/server architectures.
The DCE and CORBA architectures are designed to make the handling of distributed logic easier. Also, such data base vendors as Oracle, with its Oracle 7 product, provide a means of distributing logic between the client and server applications with the use of stored procedures that can be housed on either the client or the sever machine and easily moved from one to the other, all or in part. Cooperative processing depends heavily on the use of standardized messaging protocols that allow for communications between distributed processes in real time.
Standardized messaging formats and protocols (discussed previously in the section on Data Base Connectivity Middleware) are needed to enable client and server drivers from different vendors to interoperate. The RDA specification of the International Standards Organization (ISO) is an example of a standardized protocol specification created to fill this need. IBM has both a produce specification and a productDRDA.
A distributed applications architecture allows processing to be carried out when it is most appropriate according to policy, security, or simply raw hardware performance issues. Transaction-processing systems in banking for automated teller machines and credit card authorizations are good examples of distributed applications that rely on messaging protocols.
Some would say that the key to good client/server systems is that the client software provides the appearance to users that they are using a single-user system and that they have access and control over all its capabilities. However, not all users have the same level of sophistication in the view they see implemented in their client applications. This allows for users with different requirements to get different views of the system. Moreover, as presented in the three-tiered model, where the workgroup servers applications are clients of the enterprise servers applications, not all client applications are even seen by users.
Previous
Table of Contents
Next
Use of this site is subject certain Terms & Conditions.
Copyright (c) 1996-1999 EarthWeb, Inc.. All rights reserved. Reproduction in whole or in part in any form or medium without express written permission of EarthWeb is prohibited.
Please read our privacy policy for details.
Wyszukiwarka
Podobne podstrony:
577,24,artykul575 58001 (577)575 578575,8,artykul573 5752015 10 20 3b2 SPR 4id(575577 (2)575 (2)577 581więcej podobnych podstron