VSYS Theorie 2020
Theoriefragen
Theoriefragen
Fichier Détails
Cartes-fiches | 69 |
---|---|
Langue | Deutsch |
Catégorie | Informatique |
Niveau | Université |
Crée / Actualisé | 31.01.2020 / 04.07.2023 |
Lien de web |
https://card2brain.ch/box/20200131_vsys_theorie_2020
|
Intégrer |
<iframe src="https://card2brain.ch/box/20200131_vsys_theorie_2020/embed" width="780" height="150" scrolling="no" frameborder="0"></iframe>
|
Asymmetrie vs Asynchronität
Asymmetrische Komponenten haben unterschiedliche Rollen/Rechte
Asynchrone Komponenten sind nicht abgestimmt (z.b. SMS) -> Komponente muss zum empfangen nicht zwingend online sein
Was sind Nachrichten ?
Beliebige Menge von Informationen, die zwischen zwei Komponenten transferiert werden.
Was sind Nachrichtenmuster ?
Wie und wann wird geantwortet ? estimmt wie die Kommunikation allgemein geregelt ist
Nennen sie 4 alternative Kommunikationsmuster für eine Client-Server Verbindung (ohne genaue Beschreibung)
- Asynchron
- Polling
- Long Polling
- Push
Was versteht man unter blockierender Interaktion ?
Client arbeitet erst, wenn er weiß, dass seine Anfrage angekommen ist, solange blockiert er.
Bedeutung des Web ?
Webbrowser ersetzen lokale Betriebssysteme, Cross Plattform für Apps
Problem der Zentralisierung von Elementen ?
Zentralisierte Elemente reduzieren Größenskalierbarkeit
Zentralisierte Daten: Hoher Speicherbedarf
Zentralisierte Dienste: Überlastung bei gleichzeitigem Zugriff
Zentrale Funktionalitäten: Fehlendes Wissen über Gesamtsystem
Lösung für reduzierte Größenskalierbarkeit ?
Partitionierung: Aufteilung der Ressourcen auf verschiedene Rechner -> Weiterleitung der Anfragen an verschiedene Rechner
Replikation: Kopie aller Ressourcen auf alle Rechner -> Jeder Rechner kann jede Anfrage beantworten
Was versteht man unter Cache Kohärenz ?
Sicherstellung, dass bei Mehrprozessorsystemen mit mehreren CPU-Caches die einzelnen Caches keine inkonsistenten Daten für dieselbe Speicheradresse zurückliefern.
Was versteht man unter DNS-basiertem SLB
Technik zur Netzwerkoptimierung, bei der der eingehende Webverkehr einer Domäne logisch proportioniert wird, um die Leistung und Verfügbarkeit der Domäne zu verbessern. Es werden mehrere IP-Adressen für einen einzelnen Host oder Domänennamen bereitgestellt, der den Datenverkehr zwischen zwei oder mehreren Servern leitet.
DNS lässt es zu, dass einem Namen mehrere IÜ-Adressen zugewiesen werden können. Es können mehrere Resource Records mit gleichem Label, gleicher Klasse und gleichem Typ, aberjeweils unterschiedlichem Datenfeld existieren. Eine derartige Anordnung wird als Resource Record Set bezeichnet. Durch Resource Record Sets kann einfaches Loadbalancing realisiert werden.
Was verändert sich mit Zunahme des Kommunikationsgrades ?
- Die Verteilungstransparenz nimt zu -> Wir bekommen immer weniger mit
- technologieunabhängiger, sprachunabhängiger
Was ist eine Middleware ?
engl. für Zwischenanwendung
zusätzliche Schicht in einer komplexeren Software Struktur, deren Aufgabe es ist, die Zugriffsmechanismen auf unterhalb angeordnete Schichten zu vereinfachen und die Details deren Infrastruktur nach außen hin zu verbergen.
Was ist eine partielle Ordnung ?
Eine Relation, welche transitiv, reflexiv und antisymmetrisch ist
Lamports Uhr und die partielle Ordnung
Seine Uhr defin iert eine partielle Ordnung.
Man kann zwischen zwei Nachrichten sagen, dass A früher oder gleichzeitig geschickt wurde als B
Was iust ein Stub ?
temporärer Platzhalter, bzw. Stelvertreter.
Schnittstelle zu einem Subjekt, Datei, Ressource, Speicherobjekt oder Netzwerkverbindung.
Stub kann die Erzeugung des Subjekts und Zugriff darauf steuern
in VS: gewünschte Funktion wird nicht implementiert sondern per Anfrage an Stub an entferntes System delegiert (Remote Procedure Call)
Was versteht man unter Marshalling ?
Serialisierung und Deserialisierung von Stubs
In RMI: Serialisieren von Objekten, um diese in verteilten Systemen übertragen zu können. Klassen müssen Serializable implementieren.
Was ist die IDL ?
-> Interface Definition Language
Sprache zur Beschreibung von Objektschnittstellen
Unterschied zwischen Software und Systemarchitektur
Bei der Systemarchitektur spielt zusätzlich die Hardware eine Rolle
Man muss die Komposition auf die Hardware verteilen
Was ist enge und lose Kopplung ? Mit Architekturbeispielen
Lose Kopplung: geringer Grad der Abhängigkeit mehrerer Hard- und Software-Komponenten, bzw. Austauschbarkeit.
Datenzentrierte Architektur: unterhalten sich nur über Daten (lose gekoppelt)
Geschichtete Architektur: innerhalb der Schichten eng, dazwischen lose
Objektorientierte Architektur: sehr eng gekoppelt, alle Objekte stehen zueinander in Beziehung
Ereignisbasierte Architektur: sehr lose gekoppelt
Welche Nachteile ergeben sich aus der Vierschicht Architektur ?
Darstellungslogik auf Serverseite -> Viel kommunikation, was Latenz erhöht
Hohe Kommunikation zwischen Darstellungslogik und Darstellung
Horizontales und vertikales Schneiden
Problem: Man macht zu Beginn viele Backend-Sachen, die den Kunden nicht interessieren.
Wie bekommt man Komplexität der Anwendung in den Griff ? Vertikal Schneiden (im Sinne des Kunden)
Beispiel: Web 2.0
Unterschied RPC und RMI
RPC: prozeduale Programmierung
RMI: objektorientierte Programmierung
RPC: gewöhnliche Datenstrukturen werden an entfernte Prozeduren übergeben
RMI: Objekte werden an entfernte Methoden übergeben
RPC: Client: Client Stub / Server: Server Stub
RMI: Client: Server:Stub / Server: Skeleton
Welche Möglichkeiten existieren, um an Stubs zu kommen ?
- As Ereignis eines entfernten Methodenaufruf (Client muss jedoch schon in Besitz der entfernten Objektreferenz sein)
- Durch Anfragen an RMI-Namensdienst (RMI-Registry)
Können Sockets durch RMI ersetzt werden ?
Ja, wenn es eine Instanz gibt, welche folgende Umsetzung macht:
2 Nachrichten zu einem Methodenaufruf wrappen
Temporärer Sprung auf eine andere Kommunikationsebene
Kann das Prinzip des normalen Garbage Collectors auf den verteilten Fall übertragen werden ?
Nein, da wir uns in verschiedenen Adressräumen befinden und somit keine Referenzen besitzen
Lösung für den Garbage Collector bei RMI ?
Problem: man weiß nicht, ob noch Referenzen vorhanden sind oder das Objekt gelöscht werden kann
Lösung: Referenzzähler -> Wenn der = 0, Objekt kann gelöscht werden
An welcher Stelle ist die Middleware dazwischen?
- Middleware mantel bis zur Transportschicht
- Middleware befindet sich zwischen den zwei Komponentenals eigene Komponente
Ist eine Socket Kommunikation grundsätzluch verbindungsorientiert und warum heißen Sockets Sockets ?
Sockets sind entweder verbindungsorientiert (TCP/IP-Socket) oder verbindungslos (UDP/IP-Sockets).
Ein Socket ist ein Kommunikationsendpunkt, der mirt Hilfe einer IP-Adresse und einer Portnummer bezeichnet wird.
Die wörtliche Übersetzung "Steckdose" passt gut: Aus Sicht des Programms spielt ein Socket-Objekt die Rolle einer Steckdose, welche mit einem unbekannten dahinterliegenden Leitungssystem verbunden ist.
Welche zwei JEE Applikationstypen gibt es und worin unterscheiden sie sich ?
Application Client und Web Client
Application Clients verfügen über eine Client seitige GUI und der Server besteht nur aus de, Businnes Tier und EIS Tier (DBMS).
Web Clients besitzen eine webbasierte GUI im Browser und benötigen auf dem Server zusätzlich die Web Tier Schicht (JSP, Servlets)
Wo sind White Pages, Yellow Pages und Green Pages in der Web-Service Technologie einzuordnen und welche Funktionen haben sie ?
Universal Description, Discovery, and Integration (UDDI) -> Verzeichnisdienst, enthält Unternehmen, ihre Daten und Services. Aus dem SOA Umfeld.
White Pages: Basisinformationen über Unternehmen
Yellow Pages: Kategorisierung des Service
Green Pages: Schnittstellenbeschreibung
Beschreiben sie die Begriffe EAI, SOA und ESB und ihren Zusammenhang.
EAI (Enterprise Application Integration) ist eine IT-Infrastruktur in Form einer Middleware zur Kopplung von IT-Systemen, meistens betriebswirtschaftliche Systeme wie ERP, CRM
SOA (Service Oriented Architecture) beschreibt ein Architekturparadigma, welches vorhandene EDV-Komponenten wie Datenbanken, Server und Webseiten in Dienste kapselt und diese dann so koordiniert, dass ihre Leistungen zu höheren Diernsten zusammengefasst und anderen Organisationsabteilungen zur Verfügung gestellt werden.
ESB (Enterprise Service Bus) ist ein virtueller Datenbus für die Unterstützung von beliebigen Diensten im Unternehmensnetzwerk. Er ist die Verbindung beliebiger Applikationen.
EAI ist das Gesamtkonzept mit Planung und Methoden zur Integration von Einzelapplikationen. SOA ist ein Architekturparadigma und ESB beschreibt die Technologie für Nachrichtentransfer -> sitzt eine Ebene tiefer als SOA
Was bezeichnet man im Zusammenhang mit Nebenläufigkeit als Race-Condition ?
Ergebnis der beiden Threads hängt von Verteilung der CPU-Zeit auf Threads ab.
Was bedeutet Callback und Polling bei asynchroner Kommunikation verteilter Systeme ?
Eine Callback Methode wird auf Client Seite aufgerufen, sobald der Server seine Berechnung beendet hat. Polling ist das ständige Anfragen beim Server, ob dieser bereits eine Antwort hat.
Nennen sie zwei Lösungen zur Bewältigung von Performance Problemen in einem Client-Server System
Anpassung der Nebenläufigkeit auf Serverseite (Poolgröße,...)
Loadbalancer
Welche Beans realisieren durch ihr Konstruktionsprinzip eine Middleware Funktionalität und wie genau wird diese Funktionalität dort realisiert ?
Message Driven Beans, da sie eine lose Kopplung besitzen und einen asynchronen Nachrichtenaustausch ermöglichen. Sie werden für einen Nachrichtenkanal registriert, wie bei der MOM. Sie besitzen eine MOM keine direkten aufrufbaren Methoden. Der Client kennt nur den Nachrichtenkanal und hat keinen Zugriff auf die Message-Driven Bean.
Was versteht man unter "Referenz auf Zeit" in verteilten Systemen, insbesondere am Beispiel RMI ?
Unterschiedliche Adressräume haben zur Folge, dass Arbeiten mit Referenzen, unter Anderem aufgrund des Java Garbage Collectors schwieriger wird. Um diesem Problem entgegenzuwirken, gibt es die Methode der Referenz auf Zeit, in der die Referenzen eine Ablaufzeit bekommen und soit nur für eine gewisse Zeit verfügbar sind.