-
Definition Verteiltes System
System, in dem sich Hardware- oder Softwarekomponentenauf vernetzten Computern befinden und nur über denAustausch von Nachrichten kommunizieren und ihreAktionen koordinieren. (Couloris)
-
Konsequenzen verteilter Systeme
- Nebenläufigkeit
- Koordinationsaufwand
- Einfache Kapazitätserhöhung durch Hinzunahme weiterer Ressourcen
- Fehlende globale Zeit
- Unabhängige Ausfälle -> neue Art des (Teil-)Ausfalls
-
3 verschiedene Größenordnungen verteilter Systeme und jeweils Beispiele
- Embedded:
- - Innerhalb eines Geräts, zwischen Geräten
- IT-Technik:
- - Kommunizierende Prozesse / Threads / Rechencluster
- Kommerzielle Welt:
- - Komponenten innerhalb einer verteilten Anwendung
- - Gekoppelte Anwendungen innerhalb eines Unternehmens
- - Gekoppelte Anwendungen zwischen Unternehmen
-
5 Merkmale verteiltes System: Beispiel Internet
- Größtes zusammenhängendesverteiltes System
- Riesiger Zusammenschlussheterogener Computernetzwerke
- Plattform: standardisierteInternetprotokolle: IP, TCP/UDP
- Nutzer können die verschiedenen Dienste/Anwendungennutzen, unabhängig davon, wo sie sich gerade befinden
- Strukturierung durch Teilnetzwerke (Intranets) undBackbones
-
4 Merkmale Verteilter Anwendungen
- Nutzt ein verteiltes System, um Anwendern eine in sichgeschlossene fachliche Funktionalität zur Verfügung zustellen.
- Verteilung derAnwendungslogikauf mehrereAnwendungskomponenten
- Jede Anwendungskomponente kann auf separatem Knoten(Rechner) des VS liegen
- Nutzt ein VS als Kommunikationsinfrastruktur : „VerteilteAnwendung ist ein verteiltes System im weiteren Sinne“Veteilte
-
7 Beispiele verteilter Anwendungen
- FTP
- Web
- E-Mail
- Flugbuchungssysteme
- Internetshops
- Steuerungssoftware für Automobile
- Gruppenterminkalender im Handheld
-
4 Arten von verteilten Anwendungen
- Internetanwendungen
- Informationssysteme
- eingebettete Systeme
- mobile Anwendungen
-
4 Ziele verteilter Systeme
- Gemeinsame Ressourcennutzung
- Transparenz
- Skalierbarkeit
- Offenheit
-
Vorteile der gemeinsame Ressourcennutzung bei verteilten Systemen
- Hardware:
- - Kostenersparnis
- Daten und Informationen:
- - Informationsaustausch
- Funktionalität:
- - Fehlervermeidung
- - Wiederverwendung
-
Arten der Transparenz bei verteilten Systemen
- - Leistungstransparenz
- - Skalierungstransparenz
- - Mobilitätstransparenz
- - Ortstransparenz
- - Zugriffstransparenz
- - Nebenläufigkeitstransparenz
- - Fehlertransparenz
- - Replikationstransparenz
-
7 Merkmale von Nebenläufigkeit
- Ressourcenkapselung
- Synchronisation paralleler Zugriffe
- Gegenseitiger Ausschluss
- Tokens
- Beachtung der Problematik bereits beim Design eines Objekts, das Ressourcen kapselt, auf die parallel zugegriffen wird
- Interne Datenstruktur
- Synchronisationspattern
-
3 Aspekte der Skalierbarkeit und jeweils ein Beispiel
- Dienste: Ein Server für alle Benutzer
- Daten: Z.B. nur ein Online-Telefonbuch
- Algorithmen: Basierend auf vollständiger Information
-
3 Unterziele und jeweils ein Beispiel der Skalierbarkeit
- Kostenkontrolle: Möglichkeit schrittweiser Erweiterung
- Ressourcenkontrolle: Erschöpfung knapper Ressourcen verhindern
- Leistungskontrolle: Kontrolle des Leistungsverlusts
-
3 Aspekte der Offenheit und jeweils ein Beispiel
- Schnittstellen: für gemeinsamen Ressourcenzugriff
- Kommunikation: Einheitlicher veröffentlichter Mechanismus
- Heterogenität: Unterschiedliche Hard- bzw. Software
-
3 Aspekte der Sicherheit und ejweils ein Beispiel
- Vertraulichkeit: Schutz gegen Offenlegung gegenüber Unberechtigten
- Integrität: Schutz gegen unauthorisierte, unerkannteVeränderung
- Verfügbarkeit: Schutz gegen Störungen
-
4 Handlungsoptionen bei der Fehlerverarbeitung und jeweils eine kurze Beschreibung
- Erkennen: Verwerfen oder neu übertragen
- Tolerieren: Berücksichtigung bereits im Design
- Maskieren: Wiederholte Übertragung
- Ignorieren: Schutz gegen Störungen
-
2 Anforderungen an verteilte Systeme und jeweils 4 Merkmale
- Quality of Service:
- - Zuverlässigkeit
- - Sicherheit
- - Anpassbarkeit
- - Leistung
- Leistung:
- - Antwortzeiten
- - Durchsatz
- - Lastverteilung
- - Caching und Replikation
-
Definition Tier-Modell
Kennzeichnet unabhängigen Prozessraum innerhalb einer verteilten Anwendung. Ein Prozessraum kann, muss jedoch nicht, einem physikalischen Rechner entsprechen.
-
3 Vorteile des Tier-Modells
- Verteilung der Software zur Reduktion der Komplexität
- Interaktive Mensch-Maschine Schnittstelle
- Datenzentriertes Vorgehen
-
2 Merkmale Tier-Modell
- jede Aufgabe wird einer einzelnen Tier zugeordnet (GUI, Logik, DB)
- Art der Zuordnung bildet den entscheidenden Unterschiedzwischen verschiedenen n-Tier Architekturen
-
3 Beispiele gängiger n-Tier Architekturen
- 2-Tier Architekturen
- 3-Tier Architekturen
- 4- und mehr Tier Architekturen
-
6 Merkmale 2-Tier-Architektur
- Erstes und ältestes Verteilungsmodell
- Client- und Server-Tier
- Verteilung der Anwendungslogik auf Client- und Server-Tier kann variieren
- Präsentation auf Client
- Logik auf Server oder CLient
- Datenhaltung auf Server
-
2 Vorteile und 3 Nachteile der 2-Tier-Architektur
- Vorteile:
- - Einfach und schnell umzusetzen
- - Performant
- Nachteile:
- - schwer wartbar
- - schwer skalierbar
- - Software-Update Problem
-
Tiers bei 3-Tier-Architektur und deren Aufgabe
- Client-Tier: Präsentation
- Middle-Tier: Anwendungslogik
- Server-Tier: Datenhaltung
-
Merkmale 4- und Mehr-Tier-Architekturen
- Anwendungslogikauf der Middle-Tier wird auf mehrere Tiers verteilt
- Minimierung der Komplexität
- Besserer Schutz einzelner Anwendungsteile
- Verwendung mehrere Anwendungsprozesse
-
Beispiel 4-Tuer-Architektur (Grafik)
-
Technologie-Mapping (Grafik)
-
4 Merkmale Cloud / Software as a Service
- Anwendung wird durch externen Betreiber betrieben
- Browser-basierter Zugriff
- Multi-Mandantenfähige Applikationen, die von mehrerenUnternehmen genutzt werden
- Mietmodelle => Wenig Anfangsinvestitionen
-
4 Merkmale Service Oriented Architecture (SOA)
- Systematische Strukturierung der IT-Landschaft in fachliche Dienste
- Einsatz von Web-Service-Technologien sinnvoll
- Kopplung von vorhandenen Systemen und eigenentwickelten Services über einensog. Enterprise Service Bus
- Steigerung derFlexibilität der ITdurch flexibleKombinationvon Diensten
-
Definition Grid Computing
Einfache Nutzung vernetzter Ressourcen(»Grid«) wie Rechner, Daten, Software,Bibliotheken, Sensoren
-
5 Ziele von Grid Computing
- Virtualisierung vonRessourcen für Geschäftsvorgänge, Sicherheit und Effizienz
- Universelle Verfügbarkeit von Daten,Applikationen
- Dynamisches Angebot von Rechenleistung(Desktop-Grids, unterschiedliche Zeiten, ...)
- Kooperation über Firmengrenzen hinweg
- Gewährung von Zugriffrechten undDatensicherheit
|
|