INM 21, PIK

HSLU, Wirtschaftsinformatik BB 3. Semester

HSLU, Wirtschaftsinformatik BB 3. Semester


Fichier Détails

Cartes-fiches 33
Langue Deutsch
Catégorie Informatique
Niveau Université
Crée / Actualisé 26.12.2014 / 24.06.2017
Lien de web
https://card2brain.ch/box/inm_21_pik
Intégrer
<iframe src="https://card2brain.ch/box/inm_21_pik/embed" width="780" height="150" scrolling="no" frameborder="0"></iframe>

Definiere Verteiltes System

besteht aus einer Menge autonomer Computer, die durch
Computernetzwerke miteinander verbunden sind und mit
einer Software für die Koordination ausgestattet sind

Was ist eine verteilte Anwendung?

Anwendung, die aus verschiedenen Komponenten besteht und ein verteiltes System zur Lösung eines Anwendungsproblems benutzt.

Was ist das WWW?

Wie werden den MVC Schichten auch gesagt?

Datenhaltung, Datenrepräsentation, Datenverarbeitung

Was sind Vorteile einer verteilten Applikation?

Welche Modelle gibt es? Was beschreiben sie?

- Softwareschichten Modell (Applikation - Middleware - Betriebssystem)

- Architektur Modell (Komponenten - ihre Verteilung - Beziehungen zu einander)

Wie funktionieren folgende Client-Server Modelle?

- Mobile Agenten

- Spontane Netzwerke

Mobile Agenten sind Codestücke die von Server wandern und dort ausgeführt werden. Spontane Netzwerke bilden sich von mobilen Geräten aus, dazu wird Discovery-Dienst benötigt. 

Was bedeutet "mehrfacher Server"?

Die Daten und Dienste sind auf mehreren Server vorhanden. Der Client gelangt aber zuest an den Proxy-Server

Was ist ein "Thin/Fat" Client?

Thin Client zeigt nur Daten an. Ein Fat Client präsentiert, verarbeitet und hält die Daten.

Welche Anforderungen gehören zu welchem Kriterium?

Wie wird das Problem "Student extends Person" zu speichern genannt?

Impedance Mismatch

Was ist der Unterschied zwischen JPA und EclipseLink?

JPA ist eine Spezifikation, EclipseLink ein Provider.

Beschreibe die Klassen:

Persistence erzeugt EntityManagerFactory und braucht Persistence Unit Namen. EntityManagerFacory baut Verbidung zu DB auf und erzeugt EntityManager Instanzen. EntityManager verwaltet die Entities. EntityTransaction verwaltet Transaktionen. PersistenceContext ist die Summe aller verwalteter Entities. 

Schreibe den Code um eine Enität zu persistieren.

Methode in separate JPAUtil Klasse

Welche Assoziationen gibt es?

siehe Bild

In welchen Zuständen kann sich eine Entiät befinden?

Detached: gibt es nicht in DB

Persistent: In DB gleich wie Programm

Transient: Programm und DB anders

Welechte 2 Fetching-Strategien gibt es?

Lazy Load: Daten werden erst aus der DB geladen, wenn sie benötigt werden

Eager Load: Daten werden vollständig geladen

Was ist Preemption?

Vermeintliches parallel laufen der Prozesse

Was tut der Scheduler?

Er definiert welcher Prozess wann ausgeführt wird.

Welche Zustände kann ein Thread haben?

neu
bereit für die Ausführung
in der Ausführung
blockiert
tot

Schreibe eine Klasse MyPrinter mit Runnable

Implements Runnable

Schreibe eine Klasse MyPrinter mit extends Thread

extendsThread

Wie kann ein Thread über Parameter gesteuert werden?

Durch eine Klassenvariable, die volatile ist und in der run() gesetzt wird

Was ist ein Thread-Pool?

Eine Lösung, damit viele kurzlebige und unabhängige Aufgaben erledigt werden können. Es beihnaltet gestartete Threads, die Aufgaben asynchron erledigen können.

Für was werden Sockets verwendet?

Als Endpunkt für die Kommunikationsverbindung zwischen Prozessen, die miteinander kommunizieren.

Was braucht der Client für die Socket Verbindung?

Socket clientSocket = new Socket(IPServer, PortServer);

// schreiben

OutputStream os = clientSocket.getOutputStram(); os.write("Test"); 

// lesen
            InputStream is = socket.getInputStream();
            int c = 0;
            while ((c = is.read()) != -1)
            {
                System.out.print((char) c);
            }

Was braucht der Server für die Socket-Verbindung?

            //ServerSocket erzeugen 
            ServerSocket serverSocket = new ServerSocket(port);
            Socket clientSocket = serverSocket.accept();
            
            System.out.print("\nServer wartet auf Anfragen auf Port " + port + " ... ");

            /* Auf Anfragen von Clients warten und entsprechend handeln */
            InputStream is = clientSocket.getInputStream();
            while (true) {
                OutputStream os = clientSocket.getOutputStream();
                os.write("Server".getBytes());
                os.close();
                is.close();
            }

Unter .... ist die Software zu verstehen, die
zwischen der verteilten Anwendung und der
darunterliegenden Schicht steht umd "vermittelt"

Was ist der Unterschied zwischen AOM und KOM?

AOM ist eine Erweiterung vom KOM dar. Es werden nicht nur Dienste zur Kommunikation sondern auch zur Laufzeitfunktionalität zur Verfügung gestellt.

Welches sind die Aufgaben von Kommunikationsorientierter Middleware?

- Kommunikation

- (Un)Marshalling

- Fehlerbehandlung

Welches sind die Aufgaben von AOM?

 

  • Laufzeitfunktionalität
    • Ressourcenverwaltung
      • Anlegen von getrennten Speicherbereichen mit individuellen Sicherheitskonzepten
      • Anlegen von Verbindungsobjekten und Threads auf Vorrat, um sie bei Bedarf schnell einsetzen zu können
    • Nebenläufigkeit
      • Parallelität gewährleisten: Aufrufe isoliert in separaten, nebenläufigen Threads oder Prozessen abarbeiten
    • Verbindungsverwaltung
      • Pool für Verbindungen
    • Verfügbarkeit
    • Sicherheit
      • Authentifizierung
      • Autorisierung
  • Dienstkomponenten
    • Namensdienst
      • Zugriff auf eine Ressource IP-Auflösung
    • Sitzungsverwaltung
      • Sessions von Anwender parallel verwalten
    • Transaktionsverwaltung
      • ACID Prinzip, damit alle Daten konsistent
    • Persistenz
      • Dauerhafte Speicherung von flüchtigen Daten
      • OR Mapper

Wie kann RMI implementiert werden (Ablauf, kein Code)?

1. Remote-Interface erstellen
2. Remote-Implementierung erstellen
3. Mit rmic Stubs und Sceletons erzeugen
4. RMI-Registrierung (rmiregistry) starten
5. Remote-Service Starten

Wie kann ein Webservice implementiert werden? (Ablauf, kein Code)

1. Interface

2. Implementierung + Annotation

3. Publizieren / Registrieren

4.  Client-Stub generieren

5.  Implementiere Client

- Service Klasse instanzieren

- Port holen

- Webservicedienste aufrufen