1 / 19

Distributed Systems

Distributed Systems. Multiple software components on multiple computers running as a single system. Computers can be close or distant Homogeneous or heterogeneous Managed as a unit or disparate

kaemon
Télécharger la présentation

Distributed Systems

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. Distributed Systems • Multiple software components on multiple computers running as a single system. • Computers can be close or distant • Homogeneous or heterogeneous • Managed as a unit or disparate • Distribution will only grow as networks and computing devices become even more ubiquitous, wireless Distributed Systems - I

  2. Distributed SystemsExamples • Domain Name service (DNS) • World Wide Web • Campus-wide File Systems • Email services: POP3, IMAP, MS Exchange • ATM networks • Electronic stock-trading “floors” • “Smart” house Distributed Systems - I

  3. Distributed SystemsFeatures • Resource sharing • Of disks, printers, software packages, etc. Distributed Systems - I

  4. Distributed SystemsFeatures • Resource sharing • Openness • Supports addition of new (non-proprietary) resources • Heterogeneous components Distributed Systems - I

  5. Distributed SystemsFeatures • Resource sharing • Openness • Concurrency • Multiple communicating processes Distributed Systems - I

  6. Distributed SystemsFeatures • Resource sharing • Openness • Concurrency • Scalability • Capacity can be “easily” increased Distributed Systems - I

  7. Distributed SystemsFeatures • Resource sharing • Openness • Concurrency • Scalability • Fault tolerance • Continued operation in the face of limited (hw/sw) failure Distributed Systems - I

  8. Distributed SystemsFeatures • Resource sharing • Openness • Concurrency • Scalability • Fault tolerance • Transparency • Distribution practically invisible to users Distributed Systems - I

  9. Distributed SystemsDisadvantages • Complexity • Harder to test • System performance depends on network, relative speed of computers, resource location relative to computers • Additional design issues Distributed Systems - I

  10. Distributed SystemsDisadvantages • Complexity • Security • Possibility of eavesdropping on traffic (inter-processor communication) an added concern Distributed Systems - I

  11. Distributed SystemsDisadvantages • Complexity • Security • Manageability • Heterogeneity (of hw/sw) can cause strange interactions among computers Distributed Systems - I

  12. Distributed SystemsDisadvantages • Complexity • Security • Manageability • Unpredictability • Networked communication can be unreliable; time to complete unpredictable • Quality of Service Distributed Systems - I

  13. Client-server Architectures • Client processes make requests of server processes • Can often be structured in (three) layers • Presentation • Application processing • Data management • See Section 11.2 of Sommerville for details Distributed Systems - I

  14. Client-server Architectures • Two-tier (c-s architecture) • Thin client • Presentation only • Fat client • Presentation and processing Distributed Systems - I

  15. Two-tier ArchitecturesThin or Fat Clients? • Thin clients • Increases load on server, network • Doesn’t scale as well • Fat clients • Reduce processing load on server • Increases load on clients • Harder to manage; applications often evolve Distributed Systems - I

  16. “Two tiers good, three tiers better” • Three-tier (c-s architecture) • Distinct processes for each layer (client-server-server) • Server processes easily split onto distinct processors, if/when necessary • More scalable (can replicate processing servers) • E.g. database-backed web service (flight search/reservation system, web banking) Distributed Systems - I

  17. Web browser Web browser Web server Web server Web browser Web browser Database-based WWW service Web browser DBMS Web server Web browser Web browser Distributed Systems - I

  18. Distributed Object Architectures • Object-oriented design • No client/server distinction • System as a collection of distributed objects • Objects map to processes, not (necessarily) processors • Communication via middleware (a “software bus”) Distributed Systems - I

  19. Distributed Object ArchitecturesMiddleware • CORBA† (Common Object Request Broker Architecture) • Java RMI (Remote Method Invocation) • DCOM (Distributed Component Object Model) • .NET †See Section 11.4 of Sommerville for details Distributed Systems - I

More Related