Gedistribueerde Systemen: verschil tussen versies
Naar navigatie springen
Naar zoeken springen
Regel 8: | Regel 8: | ||
#*Wat zijn de verschillen tussen 2PC en 2PC voor nested transactions? | #*Wat zijn de verschillen tussen 2PC en 2PC voor nested transactions? | ||
#Vergelijk actieve en passieve replicatie (mondeling). | #Vergelijk actieve en passieve replicatie (mondeling). | ||
#Webservices: geef in detail de stappen die er moeten gebeuren om zonder JEE/appserver een webservice beschikbaar te maken. Geef ook aan hoe je een client hiervoor zou schrijven. Geef aan welke tools je gebruikt en wat soort input/output deze tools hebben. Staaf met informatie uit je practicum-verslag. (mondeling) | #Webservices: geef in detail de stappen die er moeten gebeuren om zonder JEE/appserver enkele methodes van een object als webservice beschikbaar te maken. Geef ook aan hoe je een client hiervoor zou schrijven. Geef aan welke tools je gebruikt en wat soort input/output deze tools hebben. Staaf met informatie uit je practicum-verslag. (mondeling) | ||
#Java RMI: | #Java RMI: | ||
#*Leg a.d.h.v. een concreet voorbeeld de stappen uit. Waar komt de RMI middleware tussenbeide? | #*Leg a.d.h.v. een concreet voorbeeld de stappen uit. Waar komt de RMI middleware tussenbeide? |
Versie van 19 jan 2010 12:40
18 januari 2010
- Bespreek en vergelijk NFS en AFS (max 4 blz)
- Bespreek de geschiktheid voor p2p-middleware om een NFS-like bestandensysteem te bouwen.
- Bespreek in dit verband volgende termen: OceanStore/Tapestry/Hoe maakt oceanstore gebruik van tapestry?
- distributed transactions:
- Tijdens het 2PC-protocol kunnen participants zich in de "prepared" state bevinden. Definieer "prepared". Aan welke voorwaarden moet voldaan zijn om in deze toestand te geraken?
- Leg de term "distributed nested transaction" uit.
- Wat zijn de verschillen tussen 2PC en 2PC voor nested transactions?
- Vergelijk actieve en passieve replicatie (mondeling).
- Webservices: geef in detail de stappen die er moeten gebeuren om zonder JEE/appserver enkele methodes van een object als webservice beschikbaar te maken. Geef ook aan hoe je een client hiervoor zou schrijven. Geef aan welke tools je gebruikt en wat soort input/output deze tools hebben. Staaf met informatie uit je practicum-verslag. (mondeling)
- Java RMI:
- Leg a.d.h.v. een concreet voorbeeld de stappen uit. Waar komt de RMI middleware tussenbeide?
- Stel dat je een soort "asynchrone procedure-oproep" zou willen implementeren in RMI. Verklaar de term "asynchrone procedure-oproep" en geef een concreet voorbeeld waar dit nuttig voor kan zijn.
- JEE/EJB: container-managed transactions bespreek. Verklaar ten minste:
- Geef het algemene programmeerconcept
- Welke rol spelen de containers hierbij?
- Welke mogelijkheden zijn er om transacties te starten? (Required, RequiresNew,...). Geef de mogelijkheden en licht kort toe.
- Geef voorbeelden van transacties in de broncode van je practicum.
12 januari 2010
Ongeveer zelfde examen als 16 januari 2009
- Bespreek het Coda File System (max 4 blz) (mondeling)
- Basisarchitectuur
- Replicatie
- Caching
- Consistentie
- Bespreek het 2 phase commit protocol voor gedistribueerde transacties (max 2 blz)
- Je krijgt een overzicht van alle methodes zoals doAbort, doCommit, canCommit,...
- Je moet ook aangeven waarom de getDecision() methode belangrijk is.
- En wanneer er TimeOuts nodig zijn
- Gossip architectuur kort bespreken en de figuur die in het boek staat geven.(max 1 blz)
- Aspect- oriented programming: wat is het en wat voor nut kan het hebben om middleware mee te bouwen. (max 2 blz)
- Uit welke delen bestaat een WSDL en wat is de functie van elk deel?
- Illustreer aan de hand van het practicum.
- Hoe heeft de binding style van de WSDL van het practicum (document literal wrapped) een invloed op de WSDL en op de SOAP berichten. (max 2 blz)
- Java RMI bespreken (ook de figuur geven van al de componenten) (max 3 blz)
- Hoe kan een remote object worden aangeroepen?
- Wanneer worden er referenties naar een object doorgegeven en wanneer niet?
- De behaalde transparantie (of eventuele gebreken) tov een gewoon java programma bespreken.
- Container-based transactions: (max 2 blz) (mondeling)
- Leg de term gedistribueerde componenten met transactionele interactie uit.
- Wat zijn de taken van de container?
- Welke opties zijn er voor het al dan niet starten van een container-based transaction?
- Je krijgt de code van het practicum over JEE, waarin je voorbeelden moet aangeven van het gebruik van transacties.
september 2009
- Bespreek bondig Andrew
- A.bespreek Coda, architectuur, kenmerken ,hoe gebeurt replicate en caching?
- B.Vergelijk Andrew met active replicatie.
- Gossip architectuur bespreek,waarvoor was het ontwikkeld?Geef een schematisch overzicht ervan en bespreek bondig.
- Bespreek het doel van p2p en architectuur ervan. Welke componenten zijn er?
- B.Bespreek hoe kan je NS implementeren over p2p, hoe ga je aan de slaag?Wat zijn de voor/nadelen van jouw oplossing?
- Vergelijk WS met RMI (grootste verschillen) en bespreek hoe kan een klant een WS vinden (mechanisme van UDDI bespreken).
- Een vraag over componenten, containers. Bespreek architecuur en elementen ervan,vergelijk met J2EE.
- A.Welke types van containers bestaan er?
- B.Hoe wordt transactie managed door een container,bespreek mogelijkheden.
- Bespreek Java RMI. Maak een overzichtsfiguur en mogelijkheden, kenmerken van Java RMI.
- A.Bespreek hoe kan men referentie naar een object doorgeven?
- B.Hoe kan een object op de server remote toegankelijk gemaakt worden voor de client?
- C.Bespreek transparantie in de context van Java RMI.
- Bespreek 2phase commit protocol bij distributed transacties.Gebruik gegeven operaties (gelijk boek figuur 14-4).
- A. Bespreek ook geneste transacties in de context hierboven. Hoe moet je 2pcp uitbreiden ?
30 januari 2009
- Vergelijk NFS met AFS (max 4 blz)
- Gedistribueerde transacties (max 2 blz)
- A. Beschrijf het two-phase commit protocol voor gedistribueerde transacties. Je mag gebruik maken van de gegeven operaties
- B. Wat is de rol van de getDecision operatie?
- C. Waar zijn er time-outs vereist?
- Vraag 3. (15%)
- A. Geef aan en waarom een peer-to-peer systeem meer of minder geschikt is om een bestandssysteem op te bouwen.
- B. Leg uit hoe OceanStore gebruikt maakt van Tapestry.
- Beschrijf en vergelijk actieve en passieve replicatie.
- Bespreek RMI(3 bladz)
- Hoe kan je als server een object beschikbaar maken voor RMI?
- Hoe roep je als client een methode op een remote object op? (+ wat gebeurt er enzo)
- Wanneer krijg je stubs en wanneer hele objecten?
- Hoe zit het met de bereikte transparantie in RMI?
- Security in JEE
- Welk model gebruikt JEE om authenticatie en authorisatie te doen?
- Hoe kan je dit gebruiken in je EJB's?
- Pas je practicum aan om een aantal methodes te beveiligen
- Bespreek SOAP en WSDL in practicum
26 januari 2009
- Leg Coda uit
- Leg de benodigde dingen van AFS uit
- De architectuur van Coda
- Replicatie
- Caching
- Bespreek deadlock detectie voor gedistribueerde transacties (mondeling)
- Schets bondig de basisprincipes voor gedistribueerde deadlock detectie.
- Bespreek edge chasing algoritmes.
- Bespreek de rol van prioriteiten van transacties in de context van deadlock detectie.
- Peer-to-peer
- Wat zijn kenmerken van peer-to-peer?
- Je moet een nameserver ontwikkelen met peer-to-peer middleware. Hoe pak je dit aan? Wat zijn de voor/nadelen van het uiteindelijke systeem?
- Lineariseerbare en serialiseerbare consistentie, wat krijg je bij actieve replicatie?
- Practicum web services (mondeling)
- Welke stappen zijn nodig om van een gewoon Java object de methodes als web services te krijgen? Dus zonder Netbeans of application server.
- Hoe kan je een Java client maken van een webservice? Welke tools gebruik je en wat gebruiken ze als input en output?
- ORB en RMI
- Hoe kan je als server een object beschikbaar maken voor RMI?
- Hoe roep je als client een methode op een remote object op? (+ wat gebeurt er enzo)
- Wanneer krijg je stubs en wanneer hele objecten?
- Hoe zit het met de bereikte transparantie in RMI?
- Security in JEE
- Welk model gebruikt JEE om authenticatie en euthorisatie te doen?
- Hoe kan je dit gebruiken in je EJB's?
- Pas je practicum aan om een aantal methodes te beveiligen
16 januari 2009
- Leg de werking van Coda uit (max 4 blz).
- Bespreek het 2 phase commit protocol voor gedistribueerde transacties (max 2 blz) (mondeling)
- Je krijgt een overzicht van alle methodes zoals doAbort, doCommit, canCommit,... en adhv die methodes verwacht hij dus dat je het protocol uitlegt.
- daarnaast moet je ook aangeven waarom de getDecision() methode belangrijk is.
- En wanneer zijn er TimeOuts nodig (dit deel vond hij heel belangrijk)
- Gossip architectuur kort bespreken en de figuur die in het boek staat geven.(max 1 blz)
- Ging over aspect- oriented middleware en waarom dat dat beter is dan container managed middleware. (max 2 blz)
Rol en belang van een platform uitleggen dat webservices ondersteund + wat het belang van WSDL daarbij. (max 1 blz)
- Java RMI bespreken (ook de figuur geven van al de componenten) (max 2 blz)
- de behaalde transparantie (of eventuele gebreken) tov een gewoon java programma bespreken.
- Container-based transactions: (max 2 blz)(mondeling)
- Leg de term gedistribueerde componenten met transactionele interactie uit.
- Hoe moet ondersteunt de middleware dit?
- Wat zijn dan containers?
- Wat zijn dan de opties voor container-based transactions?
- Je krijgt de code van het practicum over JEE, waarin je voorbeelden moet aangeven (vooral van de laatste vraag)
12 januari 2009
- Geef een bondig overzicht van het Andrew File System. Mondeling. (max 4 blz) (20%)
- Bespreek deadlock detectie voor gedistribueerde transacties (max 2 blz) (15%)
- Schets bondig de basisprincipes voor gedistribueerde deadlock detectie.
- Bespreek edge chasing algoritmes.
- Bespreek de rol van prioriteiten van transacties in de context van deadlock detectie.
- Wat is het verschil tussen lineariseerbare en serializeerbare consistentie bij replicatie. Welke vorm van consistentie garandeert actieve replicatie? (max 1 blz) (10%)
- Schets bondig de werking van het Needham-Schroeder protocol voor gedistribueerde authenticatie (veronderstellingen + opbouw van het protocol). In welke systemen wordt dit protocol (of een variatie ervan) gebruikt? (max 2 blz) (10%)
- Waar staan de afkortingen WSDL en SOAP voor. Leg de elementen, rol, werking en toepassingen van beiden uit. (max 2 blz) (15%)
- ORB en RMI. Leg uit en illustreer aan de hand van je code hoe dat programmeren in Java RMI werkt. Mondeling. (Je krijgt je code erbij op de laptop van de prof). (max 1 blz) (15%)
- J2EE-EJB-Component Frameworks. Hoe werken container-managed transacties in JEE. (max 4 blz) (15%)
28 januari 2008
Het examen bestaat uit 7 vragen, waarvan 3 over de practica (9 punten) en 4 over de theorie (11 punten). Bij elke vraag staan een verwachte lengte (uitgedrukt in pagina's). Alles opgeteld werden er 16 pagina's verwacht.
Theorie
- Sun NFS uitleggen
- Distributed transactions: deadlock probleem en edge chasing algoritme; prioriteiten van transacties in het kader van deadlocks
- Needham-Schroeder uitleggen en zeggen welk protocol dit in't echt gebruikt
- ...
Practica
- Bij RMI en WS moest ge verbeteringen voorstellen voor uw oplossing / ontwerp, uw oplossing krijgt ge erbij
- Bij JEE moest ge de verschillende soorten componenten beschrijven die bestaan, en dan zeggen waar ge ze had toegepast in uw oplossing (zonder uw oplossing erbij)
General Services
- [Jan 2006; mondeling] Wat gebeurt er als bij AFS een server reboot of crasht, en daardoor korte tijd niet beschikbaar is.
Coordination
- [Jan 2006; schriftelijk] Gegeven een non-blocking send()-operatie en een blocking receive() operatie. Hoe kan men hiermee een 'at least once' RPC-mechanisme mee maken? Leg uit. En hoe maakt men een 'maybe'-mechanisme?
Distributed Algorithms
- [Jan 2006; schriftelijk] Er zijn 4 processen, met als klok in het begin 0. Mutual exclusion using logical clocks [Ricard - Agravela]. Er gebeuren nu deze zaken:
- P1 en P3 willen tegelijkertijd een lock op iets
- P2 wil daarna ook een lock terwijl het eerste proces nog bezig is
- Het eerste proces heeft gedaan met zijn critical section.
- Beschrijf nu heel uitgebreid wat er allemaal gebeurt (status, queue, boodschappen, ...) op elk moment van de uitvoering van het algoritme
Replication
- [Jan 2006, schriftelijk] Bij Coda wordt er bij de open-operatie bij iedere server in de AVSG op de CVV gecontroleerd. Wat gebeurt er als je deze situatie zou schrappen? Geef een voorbeeld.