vesys

Description

Informatik Flashcards on vesys, created by Force Hobbit on 11/03/2019.
Force Hobbit
Flashcards by Force Hobbit, updated more than 1 year ago
Force Hobbit
Created by Force Hobbit over 5 years ago
5
0

Resource summary

Question Answer
Kann mit einem asynchronen Programmiermodell ein synchroner Methodenaufruf emuliert werden? Ja
Kann mit einem synchronen Programmiermodell ein asynchroner Methodenaufruf emuliert werden? Ja
Wird eine excpetion geworfen, wenn ein ServerSocket und ein DatagrammSocket gleichzeitig - und mit dem gleichen Port - erzeugt werden? Wenn ja, welche? Nein, es wird keine Exception geworfen. Dies funktioniert weil Datagramm Sockets den UDP Port und Server Sockets den TCP Port nutzen. Zwei Datagramm- oder Serversockets mit gleichem Port würden hingegen eine BindException werfen.
Bevor ein Socket mit der Methode close() geschlossen wird muss auf allen über diesen Socket mit getOutputStream() erzeugten Streams die Methode flush() aufgerufen werden, sonst können Daten verloren gehen. Stimmt das? Nein. Weil der Output Stream eines Sockets nicht gebuffert ist. Somit muss auch nicht geflusht werden.
Ist die HTTP Methode PATCH (die bei Rest verwendet wird um Ressourcen zu aktualisieren) Idempotent? Nein, weil Operationen (z.B. x/2) eine Ressource mehrfach verändern können.
Kann eine Rest-Schnittstelle auf dem Server auch mit Hilfe eines Servlets implementiert werden? Ja. Es ist möglich Routen via web.xml oder @WebServlet(...) Annotationen zu konfigurieren
Wenn ein RMI Objekt auf einem öffentlichen Server bereitgestellt wird, dann kann dieses Objekt auch von einem Client genutzt werden, der in einem lokalen Netzwerk (hinter NAT) z.B. mit IP 192.168.1.13 läuft (vorausgesetzt natürlich dass auf dem Server der entsprechende Port frei ist) Ja, wenn der Port freigegeben ist geht das
Java-Klassen, auf die mit RMI zugegriffen werden kann, müssen von der Klasse UnicastRemoteObject abgeleitet sein Nein
Was bedeutet Accept-Encoding: gzip im Header eines HTTP-Requests ? Der Klient teilt dem Server mit, dass als Antwort auch komprimierte Dateien unterstützt werden.
Können in einem HTTP1.1 Header auch benutzerdefinierte Headers definiert werden? Ja
Welcher Header muss seit HTTP 1.1 immer mitgeliefert werden? HTTP 1.1 erfordert gemäss Spezifikation den Host Header
Wie oft werden die Methoden init(), destroy() und service(...) während der Servlet Lebenszeit aufgerufen? init(): 1-Mal destroy(): 1-Mal service(): n-Mal
Welches End-to-End Protokoll wird von Stream Sockets verwendet? TCP
Welches End-to-End Protokoll wird von Datagramm Sockets verwendet? UDP
Sind Stream Sockets verbindungsorientiert? Ja
Sind Datagramm Sockets verbindungsorientiert? Nein
Was ist der Unterschied zwischen dem port und dem localPort Parameter beim instanzieren eines java.net.Socket? der localPort ist der port auf welchem ein Socket gebunden wird. Oder 0, für ein vom System gewählter Port. Wie bei einer Telefonnummer die Interne Rufnummer.
Dürfe POST Requests gecached werden? Anwendungen dürfen Antworten auf eine POST-Anfrage nicht zwischenspeichern.
Was ist die Kern-Idee von REST? REST ist ein Stil der Software Architektur und bedeutet Representational State Transfer. Es ist keine genaue Spezifikation. Der Begriff wird oft verwendet um einfache Interfaces zu beschreiben welche domänenspezifische Daten über HTTP übermitteln.
Welchen HTTP-Statuscode geben Sie zurück, wenn sie beim Implementieren Ihrer Rest Schnittstelle z.B. die POST Operation auf einer Ressource nicht unterstützen? 405 Method not Allowed
Welche Annotation wählen Sie mit JAX-RS um das "accept" header, welches vom Klienten gesendet wird, zu behandeln? z.B. @Produces({"text/plain", "text/html"})
Welche Annotation wählen Sie mit JAX-RS um die Precondition zu definieren? z.B. @Consumes("application/x-www-form-urlencoded")
Wie können Sie Optimistic Locking implementieren? --- CLIENT --- 1) Conditional GET -> Ressource holen 2) Preconditions prüfen (If-Unmodifid-Since, If-Match) 3) Ressource anpassen 4) Conditional PUT -> Ressource schreiben (idempotent) --- SERVER --- 1) Auf Server erneute Prüfung der Preconditions
Welche Schritte müssen Sie unternehmen um eine REST Schnittstelle zu bauen? - Ressourcen Überlegen - Welche http Methoden unterstütze ich (Was haben diese für eine Semantic) - In welchem Format werden Dokumente versendet - Allfällige Fehlercodes definieren
Was bedeutet RMI? Remote Method Invocation
Was ist der Unterschied von einem Distributed Object (RMI) Modell gegenüber einem Service-Architektur (JAX-RS) Modell? Im Distributed Object Modell kann mit Remote Objekten über Referenzen so gearbeitet werden, als wären die Objekte Lokal. RMI ist ein Exklusiv auf JAVA beschränktes Modell. Es gibt keine Sprach-Kompatibilität. Services in einer Service-Oriented Architektur sind typischerweise als Singletons implementiert. Die gleiche Service Instanz wird von allen Clients benutzt.
Was ist ein Stub bezogen auf RMI? - Repräsentiert ein Entferntes Objekt auf Client Seite. - Implementiert das gleiche Interface wie das Remote Objekt - Weiss wie Methoden Aufrufe weitergeleitet werden sollen - Client hat eine lokale Referenz zum Stub/Proxy Objekt
Über was für eine Verbindungsart wird zwischen Stub und Skeleton im RMI Kontext kommuniziert? Es wird über Sockets kommuniziert
Wie weiss ein RMI Server, wann Objekte Weggeräumt werden dürfen? Die Clients melden wie lange Sie ein Objekt leasen möchten. Wenn die Clients den Lease (nach der hälfte der Zeit) nicht erneuern, weiss der Server dass das Objekt weggeräumt werden darf.
Wofür ist die unexportObject Methode im RMI Kontekt gut? mit boolean unexportObject(Remote obj, boolean force) kann ein Remote Objekt aus der RMI runtime entfernt werden. Dann wird das Objekt selbst serialisiert und zurückgegeben. Nicht nur ein Proxy Objekt. Kann für Migrationen genutzt werden.
Beschreiben Sie die Unterschiede von synchroner und ansynchroner Kommunikation Synchron: - Sender und Empfänger synchronisieren sich (z.B. Zeit Sync.) - Der Sender wartet (blockiert) bis die Kommunikation beendet ist. - z.B. Menschliche Kommunikation / HTTP Asynchron: - Sender und Empfänger laufen unabhängig voneinander - Der Sender wartet nicht auf die Antwort des Empfängers und arbeitet weiter - z.B. E-Mail / SMS
Können zwei Klienten auf derselben Maschine denselben lokalen Port verwenden um auf ein Server (mit z.B. Port 1234) zuzugreifen? Nein, das funktioniert nicht. Der Lokale Port wird dann bereits verwendet und es wird darum eine BindException geworfen.
Kann ein Port auf einem Rechner sowohl für einen ServerSocket als auch für einen Klienten Socket verwendet werden? Nein, ein Port kann pro Netzwer nur ein Mal verwendet werden. Ein Port ist eindeutig pro Netzwerk.
Welche drei HTTP Request Methoden sind seit HTTP v1.0 verfügbar? GET, POST, HEAD
Wofür ist die GET HTTP Methode gut. Ist diese Idempotent? Können GET Request gecached werden? Die GET Methode dient dazu auf Inhalte auf eines Servers zuzugreifen. GET Requests sind Idempotent => f(f(x)) = f(x) GET Requests können bei bedarf gecached werden
Wie werden Request Daten bei einem POST request übermittelt und welches Attribut muss zwingend mit übertragen werden. Request Daten werden im Body der Anforderung übertragen. Das Attribut Content-Length ist obligatorisch.
Wöfür ist die HEAD HTTP Methode gut? Identisch mit GET, nur dass der Server den Body nicht zurückgeben darf. Kann verwendet werden, um Metainformationen (Header) über die Ressource anzufordern.
Wofür ist die OPTIONS HTTP Methode gut? Liefert Informationen über die Methoden, die auf der angegebenen Ressource (oder auf dem Server im Allgemeinen, wenn die Anfrage URI = "*") verfügbar sind.
Nennen Sie einige technische Verbesserungen die mit HTTP 1.1 eingeführt wurden. - Persistente Verbindungen (mehrere Anfragen über dieselbe Verbindung) - Pipelining (Senden einer neuen Anfrage, bevor die vorherige beantwortet wird) - Der Klient kann Teile von Dokumenten (Ranges) anfordern. - Der Klient sendet Daten erst nach einer "100 Continue" Antwort vom Server. Dient zur Überprüfung, ob der Server Daten akzeptiert. - Chunked encoding - Trailer (Message Headers, die am Ende des Body geliefert werden => Prüfsumme)
Auf welche vier Arten kann ein HTTP Server das Ende einer Nachricht anzeigen? - Implizite Inhaltslänge - Verbindung vom Server geschlossen - Content-Length Header Attribut - Chunked-Encoding
Wie funktioniert Chunked-Encoding? Der Inhalt wird in eine Reihe von Chunks zerlegt, denen jeweils die Grösse in Bytes vorangestellt ist, ein Chunk ohne Grösse zeigt das Ende der Nachricht an. Server muss dafür den "Transfer-Encoding: chunked" Header setzen.
Was ist die Definition eines Servlet? Ein Servlet ist ein Programm, das auf einem Server läuft und eine Antwort auf eine HTTP-Anfrage generiert, es ist ein verbesserter Ersatz für CGI (RFC 3875) Skripte.
Wann verwenden Sie POST und wann PUT um mit REST eine neue Ressource auf dem Server zu erstellen? POST, um eine neue (Sub-)Ressource ohne bereits bekannter ID zu erzeugen. PUT, um eine neue Ressource mit bekannter ID zu erzeugen.
Welche zwei Methoden können sie mit REST verwenden um eine existierende Ressource zu aktualisieren? PUT oder PATCH
Nennen Sie die vier Standard Response Codes die Sie von einer REST Schnittstelle erwarten. 201, Created 404, Not Found 405, Method not allowed 415, Unsupported Media Type
Was ist im REST Kontext der unterschied zwischen der PUT und der PATCH Methode? PUT (Idempotent) Die mit PUT eingeschlossene Entität gilt als eine modifizierte Version der auf dem Server gespeicherten Ressource, und der Klient fordert an, die gespeicherte Version zu ersetzen. PATCH (Nicht zwigend Idempotent) Die mit PATCH eingeschlossene Entität enthält eine Reihe von Anweisungen, die beschreiben, wie eine Ressource geändert werden sollte (typischerweise zu modifizierende Teile). PATCH wirkt sich auf die durch die URI identifizierte Ressource aus, und es kann auch Nebenwirkungen auf andere Ressourcen haben, d.h. es können neue Ressourcen erstellt oder bestehende modifiziert werden.
Was wird bei RMI in einer Remote Reference gespeichert? host port object_id
Welche von REST definierten HTTP Methoden sind Idempotent? OPTIONS GET HEAD PUT DELETE
Welche von REST definierten HTTP Methoden sind NICHT Idempotent? POST PATCH
Show full summary Hide full summary

Similar

ein kleines Informatik Quiz
AntonS
Informatik
Tom Kühling
PHP Grundlagen
chrisi.0605
Wirtschaftsinformatik Teil 2
Sabrina Heckler
Informatik 1 - Einführung
Svenja
Codierung
Tom Kühling
Wirtschaftsinformatik Teil 1
Sabrina Heckler
Einführung in das Studium Informatik
Daniel Doe
Lernplan
Sandra K
Infromatik Basiswissen
Simon Hefti