Computing Architectures - PowerPoint PPT Presentation

1 / 35
About This Presentation
Title:

Computing Architectures

Description:

Difficulty in sharing the work individuals do and the duplication of ... Greater sharing of work and resources and easier to administer than distributed computing. ... – PowerPoint PPT presentation

Number of Views:32
Avg rating:3.0/5.0
Slides: 36
Provided by: eswarsi
Category:

less

Transcript and Presenter's Notes

Title: Computing Architectures


1
Computing Architectures
  • Centralized Computing
  • Multiple users access a central computer
    (mainframe/midrange) via remote terminals.
  • Central computer performs all the computations
    and controls all the peripherals.
  • a.k.a. host-centric computing.
  • Greater security is the key advantage.
  • Total reliance on the central computer is the key
    disadvantage.

2
Computing Architectures
  • Centralized Computing (Contd.)
  • Other issues are managing on-line user requests
    and peak-load problems.
  • Centralized functions still needed for large
    business operations on-line access to databases
    for airlines, distributions, large
    manufacturers.

3
Computing Architectures
  • Personal Computing
  • Individual microcomputers with user friendly GUI
    interfaces.
  • Greater flexibility for individual users is the
    key advantage.
  • Difficulty in sharing the work individuals do and
    the duplication of underutilized hardware and
    software and the key disadvantages.

4
Distributed Computing
  • Multiple workstations are linked using a network
    to share data and computing resources.
  • Advantages are sharing of data, messages and work
    and sharing of resources.
  • Complex to administer security and control
    issues -- access privileges for shared items.

5
Computing Architectures
  • Network Computing
  • Combines benefits of centralized computing with
    the flexibility and responsiveness of distributed
    computing.
  • Multiple network computers (NCs) are linked to a
    central server, which provides links to other
    servers.
  • NCs do not contain hard disks.

6
Computing Architectures
  • Network Computing (Contd.)
  • Greater sharing of work and resources and easier
    to administer than distributed computing.
  • Advantages are cheaper network computers,
    centralization of data and programs and greater
    data security.
  • Disadvantages are reliance on centralized control
    and the relative immaturity of software designed
    to support this architecture.

7
Client/Server Computing
  • Client Server Distributed Computing (Comer
    1994).
  • Client/Server computing forms the basis for
    distributed computing.
  • Facts - Programs communicate and not computers.
    Computers can run multiple programs at one time.
  • A server program offers a service. A client
    program is a consumer of services.

8
Client/Server Computing
  • Distinguishing Characteristics of Client/Server
    Computing (Orfali et al. 1999)
  • Service - Server is a provider client is a
    consumer of services.
  • Shared resources - A server can service many
    clients simultaneously and regulate their access
    to shard resources.

9
Client/Server Computing
  • Distinguishing Characteristics of Client/Server
    Computing
  • Transparency of location - The server is a
    process or program that can reside on the same
    machine as the client or on a different machine
    across the network. A program can be a client, a
    server, or both.
  • Mix-and match - The ideal client/server software
    is independent of hardware or OS platforms.

10
Client/Server Computing
  • Distinguishing Characteristics of Client/Server
    Computing
  • Message-based exchanges - clients and servers
    interact through a message-passing mechanism.
  • Encapsulation of services Message specifies
    what and not how.

11
Client/Server Computing
  • Distinguishing Characteristics of Client/Server
    Computing
  • Scalability
  • Horizontal - add/remove clients
  • Vertical - larger and faster server or load
    distribution across multiple servers
  • Integrity - Server code and server data are
    centrally managed

12
Types of Servers
  • The idea of splitting an application along
    client/server lines results in various forms of
    networked software solutions.
  • Each of these solutions is distinguished by the
    nature of service provided.
  • File servers, Database servers, Transaction
    servers, GroupWare servers, etc.

13
File Servers
  • Client (usually a PC) requests for a file of
    records over a network.
  • Many message exchanges over the network to find
    the requested data.
  • File servers are key to shared repositories of
    documents, images, engineering drawings, and
    other large data objects.

14
Database Servers
  • Client passes SQL requests as messages to the
    database server.
  • DBMS code and data reside on the server.
    Application code resides on the client.
  • Server performs the search and returns the
    results to the client.
  • Play a key role in data warehousing and decision
    support systems.

15
Transaction Servers
  • Client invokes remote procedures or services on
    the server.
  • Remote procedures execute a group of SQL
    statements called transactions.
  • Application is called Online Transaction
    Processing or OLTP.

16
Transaction Servers
  • Client side usually includes a GUI server side
    SQL transactions.
  • Quick response, high security and integrity
    characterize OLTP application.

17
GroupWare Servers
  • Management of semi-structured information such as
    text image, mail, bulletin boards, and the flow
    of work.
  • Lotus Notes MS Exchange are examples.
  • Communication middleware between the client and
    the server is vendor-specific. E-mail is becoming
    a standard messaging middleware.

18
Fat Clients and Fat Servers
  • How is the application split between the client
    and the server?

Source Orfali et al. 1999
19
Fat Clients and Fat Servers
  • Fat Client
  • More traditional form of client/server.
  • Bulk of the application runs on the client.
  • Eg. File server model.

20
Fat Clients and Fat Servers
  • Fat Servers
  • Most of the code runs on the server
    mission-critical applications.
  • Network interchanges are minimized.
  • Eg. Transaction Server model server encapsulates
    the database client issues procedure calls
    (invokes services).

21
2-Tier, 3-Tier, N-Tier
  • Same basic idea as fat servers and fat clients.
  • How are the functional units of a client/server
    application assigned either to the client or to
    one or more servers?
  • Typical functional units - User Interface,
    Business Logic, and the Shared Database.
  • Middleware is used to communicate between the
    tiers.

22
2-Tier, 3-Tier, N-Tier
  • In a 2-Tier system, the business or application
    logic is on the client with the GUI or on the
    server with the database or both. E.g., File and
    Database servers.
  • In a 3-Tier system, the application logic lives
    in the middle tier. E.g., Web Application server.

23
2-Tier Client/Server Architecture
24
3-Tier Client/Server Architecture
25
Middleware
  • A vague term that covers all the distributed
    software needed to support interactions between
    clients and servers. (Orfali et al. 1999)
  • Performs whatever translation is necessary to
    make a clients request understandable to a
    server program. (Alter 1999)

26
Middleware
  • Starts on the client side that invokes a service,
    covers the transmission of the request over the
    network and the resulting response.
  • Middleware does not include either the software
    that provides the actual service or the database.
  • On the client side, it does not include the
    interface.

27
Middleware (Contd.)
  • It does include software used to co-ordinate
    inter-server interactions.
  • Represents a rapidly changing and growing area.
    (From 1.7 billion in 1997 to 7 billion in
    2002 according to IDC.)

28
2-Tier Client/Server
  • Simplicity is the biggest selling point.
  • Well suited for departmental applications (DSS,
    small-scale GroupWare) or simple Web publishing
    applications.
  • Scalability problems - hard to deploy and manage
    fat clients on a large scale.
  • Difficulty in managing software on remote
    desktops.

29
3-Tier (N-Tier) Client/Server
  • For large-scale, enterprise-wide applications
    that serve thousands of enterprise clients.
  • Applications are split into hundreds of
    components and distributed across multiple
    servers.

30
3-Tier (N-Tier) Client/Server
  • In theory, 3-Tier systems are
  • scalable - load distribution across multiple
    servers.
  • flexible - all 3 tiers on different computers
    second and third on the same computer second
    tier across multiple servers etc.
  • More secure - data tables are encapsulated.

31
3-Tier (N-Tier) Client/Server
  • In theory, 3-Tier systems are
  • Easier to administer - less logic on the client
    to manage.
  • More responsive - only service requests and
    responses (and not raw data) are sent between the
    client and the server.

32
3-Tier Vs. N-Tier
  • Middle tier in most 3-Tier applications is often
    implemented as a collection of components.
  • Components are used in a variety of
    client-initiated business transactions.
  • Components co-operate while responding to a
    client request.
  • Components can encapsulate legacy applications
    running on main frames.

33
Component-based Architecture
  • Advantages of component-based applications in the
    middle tier.
  • Lend themselves well to a small-team, incremental
    development approach.
  • Components can be reused.
  • Components encapsulate details of application
    logic.

34
Component-based Architecture
  • Advantages of component-based applications in the
    middle tier.
  • Clients can access data and functions easily and
    safely.
  • Possibility of buying ready-made components.
  • Basis for suites of applications.

35
Lecture 6 Computing Architectures
  • References
  • Alter S. (1999), Information Systems A
    Management Perspective, Third Edition,
    Prentice-Hall, Inc., New Jersey.
  • Chapter 8 pp. 268 - 276
  • Comer, D.E. (1997), The Internet Book, Second
    Edition, Prentice-Hall, Inc., New Jersey.
  • Chapter 15 pp. 121 - 125
  • Orfali R., D. Harkey and J. Edwards (1999),
    Client/Server Survival Guide, Third Edition, John
    Wiley.
  • Chapters 1-3
Write a Comment
User Comments (0)
About PowerShow.com