1 / 37

Distributed Systems Architectures

Distributed Systems Architectures. IS301 – Software Engineering Lecture # 15 – 2004-10-04 M. E. Kabay, PhD, CISSP Assoc. Prof. Information Assurance Division of Business & Management, Norwich University mailto:mkabay@norwich.edu V: 802.479.7937. Objectives.

haroldallen
Download Presentation

Distributed Systems Architectures

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. DistributedSystems Architectures IS301 – Software Engineering Lecture # 15 – 2004-10-04 M. E. Kabay, PhD, CISSP Assoc. Prof. Information AssuranceDivision of Business & Management, Norwich University mailto:mkabay@norwich.edu V: 802.479.7937

  2. Objectives • To explain the advantages and disadvantages of different distributed systems architectures • To discuss client-server and distributed object architectures • To describe object request brokers and the principles underlying the CORBA standards • To introduce peer-to-peer and service-oriented architectures as new models of distributed computing.

  3. Topics covered • Multiprocessor architectures • Client-server architectures • Distributed object architectures • Inter-organizational computing Today we will use 27 of Prof. Sommerville’s slides in class

  4. Distributed systems • Virtually all large computer-based systems are now distributed systems. • Information processing is distributed over several computers rather than confined to a single machine. • Distributed software engineering is therefore very important for enterprise computing systems.

  5. System types • Personal systems that are not distributed and that are designed to run on a personal computer or workstation. • Embedded systems that run on a single processor or on an integrated group of processors. • Distributed systems where the system software runs on a loosely integrated group of cooperating processors linked by a network.

  6. Distributed system characteristics • Resource sharing • Sharing of hardware and software resources. • Openness • Use of equipment and software from different vendors. • Concurrency • Concurrent processing to enhance performance. • Scalability • Increased throughput by adding new resources. • Fault tolerance • The ability to continue in operation after a fault has occurred.

  7. Distributed system disadvantages • Complexity • Typically, distributed systems are more complex than centralized systems. • Security • More susceptible to external attack. • Manageability • More effort required for system management. • Unpredictability • Unpredictable responses depending on the system organization and network load.

  8. Distributed systems architectures • Client-server architectures • Distributed services which are called on by clients. Servers that provide services are treated differently from clients that use services. • Distributed object architectures • No distinction between clients and servers. Any object on the system may provide and use services from other objects.

  9. Middleware • Software that manages and supports the different components of a distributed system. In essence, it sits in the middle of the system. • Middleware is usually off-the-shelf rather than specially written software. • Examples • Transaction processing monitors; • Data converters; • Communication controllers.

  10. Multiprocessor architectures • Simplest distributed system model. • System composed of multiple processes which may (but need not) execute on different processors. • Architectural model of many large real-time systems. • Distribution of process to processor may be pre-ordered or may be under the control of a dispatcher.

  11. A multiprocessor traffic control system

  12. Client-server architectures • The application is modeled as a set of services that are provided by servers and a set of clients that use these services. • Clients know of servers but servers need not know of clients. • Clients and servers are logical processes • The mapping of processors to processes is not necessarily 1 : 1.

  13. A client-server system

  14. Computers in a C/S network

  15. Application layers

  16. Thin and fat clients

  17. A client-server ATM system

  18. A 3-tier C/S architecture

  19. An internet banking system

  20. Distributed object architecture

  21. A data mining system

  22. CORBA application structure

  23. ORB-based object communications

  24. Inter-ORB communications

  25. Decentralized p2p architecture

  26. Semi-centralized p2p architecture

  27. Web services

  28. Automotive system

  29. Homework Names etc. on upper right, please • Required • By 11 Oct 2004 • For 20 points, answer in detail • 12.3, 12.8 (@10) [use computer-drawn diagrams for these two] • For 5 points, answer in detail 12.5 • Optional • By 18 Oct 2004 • For a maximum of 8 additional points, answer any or all of • 12.1, 12.2, 12.4, 12.6 (@2)

  30. DISCUSSION

More Related