ElosztottRendszerekVizsga20060607
A VIK Wikiből
Ez az oldal a korábbi SCH wikiről lett áthozva.
Ha úgy érzed, hogy bármilyen formázási vagy tartalmi probléma van vele, akkor, kérlek, javíts rajta egy rövid szerkesztéssel!
Ha nem tudod, hogyan indulj el, olvasd el a migrálási útmutatót.
2006.06.07. vizsga
- Ismertesse az RPC alapú (RPC-szerű) programok létrehozási mechanizmusát! (10p)
RPC működési mechanizmusa:hívás ↔ függvény marshalling unmarshalling transport transport Létrehozás lépései:
- interfész leírása .idl file-ba
- idl compiler kliens és szerver stubot generál belőle
- kitölteni a stubokat, kliens oldalon megadni a szerver hálózati elérhetőségét
- kliens és szerver fordítása C compilerrel
- Mik az alapvető különbségek a COM IDL és a CORBA IDL nyelvek között (legalább 7)? (15p)
szempont COM CORBA interfészek közös őse IUnknown CORBAObject interfész öröklés egyszeres többszörös impl. hány interfészt valósít meg többet egyet fizikai interfész azonosító GUID névtér metódus paraméterek iránya in, out, inout, retval in, out, inout visszatérési érték HRESULT bármi oneway hívás nem támogatja támogatja exception nem támogatja támogatja attribútumok nem támogatja get/set metódusokká fordul típusok saját típus definiálható, ha írunk hozzá marshallingot alaptípusok, tömb, sequence, struct, union referenciaszámláló IUnknown POA manager - Vázolja fel a CORBA architektúrát! Mi a szerepe az Object adaptereknek a CORBA-ban? (15p) ld. 2005.05.26 vizsga, 3. feladat
- Milyen szabványok és technikák segítenek a különböző platformokon működő web szolgáltatások együttműködésében? Fejtsen ki hármat közülük! (15p) ld. 2005.05.26 vizsga, 6. feladat
- Mi a különbség a BMP és a CMP entity bean között? (10p)
CMP entity bean (Container Managed Persistence): relációs adatbázis objektum-orientált leképzése
- tábla ↔ osztály
- oszlop ↔ attribútum
- sor ↔ példány
- INSERT ↔ ejbCreate() (Home interfész)
- SELECT ↔ finder metódus (Home interfész, EJB-QL lekérdezés)
- UPDATE ↔ setXxx (Local/Remote interfész), vagy setDTO/syncDTO
- DELETE ↔ ejbRemove() (Local/Remote interfész)
- A programozó írja az ejbLoad() és az ejbStore() metódusokat
- Az adatbázis hozzáférés JDBC-n keresztül, SQL parancsokkal történik
- Milyen file-okból épül fel egy EJB komponens, és ezek közül melyeket generálja az EJB konténer? (10p)
- _Deployment descriptor_: referenciákat, EJB-QL lekérdezéseket, middleware konfigurációs beállításokat, névtereket tárol. Fejlesztő tölti ki.
- _Home és Local Home interfész_: bean példányosítás, entity bean keresés. Generálódik.
- _Home és Local Home interfész implementációja_: generálódik
- _Local és Remote interfész_: üzleti metódusok interfészei, fejlesztő tölti ki.
- _Bean_: üzleti metódusok implementációja. Fejlesztő dolga, de néhány metódus generálódik.
- _DTO_: generálódik, de a fejlesztő kiegészítheti vagy írhat újakat.
- _Adatbázis modell_: fejlesztő tervezi.
- _Táblák_: modell alapján generálódnak.
- Gyártó specifikus file-ok
- Ismertesse a .NET CLR főrészeit! (10p)
ld. 2006.04.24. minta zh, 6. feladat
Érdemes a CLR ott vastaggal jelölt részeiről írni pár mondatot. A remoting, és az egyéb .NET előtt is létező feature-ök nem érdeklik Hasszánt. - Milyen tényezőktől függ egy web alapú rendszer esetén a válaszidő? Hogyan lehet csökkenteni? (Eredeti kérdés: hogyan lehet növelni? :) Milyen formában jelenik meg a kapcsolat-orientáltság szerepe a válaszidőben? (15p)
A válaszidő összetevői
- R = latency + demand time
- latency = várakozás a kliens TCP stackjében + a webszerver várakozási sorában
- demand time = hálózati átvitel + CPU + disk
- hálózati átvitel = kapcsolat felépítés + kérés
- disk = keresés + várakozás a lemeztányér megfelelő pozíciójára + olvasás
- _n_ az oldalon található objektumok száma
- Kapcsolat orientált: Értelmezés sikertelen (formai hiba): {\displaystyle R > (n+2)RTT + \sum\limits_{i=0}^n \left\lceil \frac{i.\textrm{objektum m\'erete}}{MTU} \right\rceil }
- Kapcsolatmentes: Értelmezés sikertelen (formai hiba): {\displaystyle R > 2(n+1)RTT + \sum\limits_{i=0}^n \left\lceil \frac{i.\textrm{objektum m\'erete}}{MTU} \right\rceil }
- Egyenlőséget úgy kapunk, ha az egyenlőtlenség jobb oldalát egy 1,1-1,2 közötti konstanssal szorozzuk
- Kapcsolat orientált esetben a címzettet csak egyszer kell megkeresni a hálózaton, kapcsolatmentes esetben n+1-szer.
- Adatbázis: 50% javulás
- tranzakcióméret helyes megválasztása
- normalizálás mértékének helyes megválasztása
- tárolt eljárások használata: kisebb overhead
- cache-elés, IMDB
- elosztott adatbázis
- Alkalmazás szerver: 25% javulás
- CMP mellőzése
- DTO-k használata
- object pooling, connection pooling
- minél kevesebb middleware igénybe vétele
- bean méret helyes megválasztása
- Kliens
- Kliens oldali script használata
- Vastag kliens vagy applet használata
- AJAX
- Disk
- Cache-elés
- RAID
- Töredezettség-mentesítés
-- Peti - 2006.06.07.