Võrgurakendused 2 eksamiteemad 2018: erinevus redaktsioonide vahel
Resümee puudub |
Resümee puudub |
||
| (ei näidata sama kasutaja 10 vahepealset redaktsiooni) | |||
| 1. rida: | 1. rida: | ||
Eksamil tuleb | Eksamil tuleb neli kirjalikku küsimust alltoodud teemade kohta, seejuures ühe teema kohta ei tule mitut küsimust. Vastuses on sul vaja selgitada ja/või tuua näiteid ja/või pseudokoodi. Otseseid programmeerimisülesandeid ei tule. | ||
Alltoodud materjalid ei ole nö kohustuslikud, vaid ainult soovituslikud: hea mõte on otsida ja lugeda ise juurde. Samuti leiad siintoodud materjalides - näiteks wikipedia artiklites - väga spetsiifilist tausta ja detaile: seda eksamil ei küsita. Küsimuste fookus on olulistel toimimispõhimõtetel - et sa saaksid aru, mis asi on ja kuidas põhimõtteliselt käib - ning veidi ka rakendamisvaldkondadest/fookusest (ehk, milleks hea). | |||
1) API protokollid, konkreetsemalt HTTP 1.0, JSON, XML-RPC, SOAP, REST (põhipunktid). HTTP 2.0, XML Schema, websockets, WSDL, UDDI, WS-I jne küsimusi ei tule. | |||
* Memod ja lingikogud loengust: [[võrgurakenduste protokollid 1]],[[võrgurakenduste protokollid 2]], [[võrgurakenduste protokollid 3]] | * Memod ja lingikogud loengust: [[võrgurakenduste protokollid 1]],[[võrgurakenduste protokollid 2]], [[võrgurakenduste protokollid 3]] | ||
* Otsi ja loe veidi ise juurde. | * Otsi ja loe veidi ise juurde. | ||
2) Vanemate P2P süsteemide põhimõtted, konkreetsemalt arusaamine järgmiste süsteemide põhimõtetest: Esialgne Napster, Gnutella, superpeer mehhanism (näiteks vana Skype). | |||
* [http://en.wikipedia.org/wiki/Peer-to-peer vikipeedia ülevaade] | * [http://en.wikipedia.org/wiki/Peer-to-peer vikipeedia ülevaade] | ||
| 15. rida: | 16. rida: | ||
3) DHT (näiteks Chord või Kademlia), Bittorrent ja TOR. Mehhanismid ja eri arhitektuuride eesmärgid/fookused/eelised. Bittorrenti mehhanism ja optimeeringud. NB! Mix networkinduse kohta küsimusi ei tule, erandina võib tulla küsimus TORi kohta. | |||
* Sama [[Media:P2p_overview.ppt|Loengus tehtud ülevaade eri P2P tehnoloogiatest]]: järgmised osad | * Sama [[Media:P2p_overview.ppt|Loengus tehtud ülevaade eri P2P tehnoloogiatest]]: järgmised osad | ||
| 31. rida: | 32. rida: | ||
** [http://en.wikipedia.org/wiki/Tor_%28anonymity_network%29 TOR wikipedias] | ** [http://en.wikipedia.org/wiki/Tor_%28anonymity_network%29 TOR wikipedias] | ||
4) Blockchain ja bitcoin. | |||
* [https://en.wikipedia.org/wiki/Blockchain | * [https://en.wikipedia.org/wiki/Blockchain Wikipedia ülevaade kogu teemast] | ||
* [https://bitsonblocks.net/2015/09/01/a-gentle-introduction-to-bitcoin/ Gentle intro 1] | * [https://bitsonblocks.net/2015/09/01/a-gentle-introduction-to-bitcoin/ Gentle intro 1] | ||
* [https://bitsonblocks.net/2015/09/09/a-gentle-introduction-to-blockchain-technology/ Gentle intro 2] | * [https://bitsonblocks.net/2015/09/09/a-gentle-introduction-to-blockchain-technology/ Gentle intro 2] | ||
| 39. rida: | 40. rida: | ||
* [https://anders.com/blockchain/ Blockchaini demo]: vajuta üleval "Hash", "Block", "Blockchain" linkidele ja proovi igal lehel ise datat muuta ja "Mine" nupule vajutada. "Mine" teeb proof-of-worki ehk otsib random stringi (nonce) mille lisamisel datale saame mitme nulliga algava hashi. | * [https://anders.com/blockchain/ Blockchaini demo]: vajuta üleval "Hash", "Block", "Blockchain" linkidele ja proovi igal lehel ise datat muuta ja "Mine" nupule vajutada. "Mine" teeb proof-of-worki ehk otsib random stringi (nonce) mille lisamisel datale saame mitme nulliga algava hashi. | ||
5) Paralleelrehendused (sh Lukustamine, transaktsioonid, spinlock, optimistlik paralleelsuskontroll) | |||
* Põhiline [[Media:na2_ccdb_slides.pdf|Paralleelsus andmebaasides: slaidid]]. | * Põhiline [[Media:na2_ccdb_slides.pdf|Paralleelsus andmebaasides: slaidid]]. | ||
| 46. rida: | 47. rida: | ||
**[[Media:11-transactions.pdf|Introduction to Transactions (slaidid)]] | **[[Media:11-transactions.pdf|Introduction to Transactions (slaidid)]] | ||
**[[Media:na2_sync_slides.pdf|Sünkroniseerimisprimitiivide slaidid]] | **[[Media:na2_sync_slides.pdf|Sünkroniseerimisprimitiivide slaidid]] | ||
* [http://stackoverflow.com/a/16207592 Thread, Queue ja Lock] Pythonis | ** [http://stackoverflow.com/a/16207592 Thread, Queue ja Lock] Pythonis | ||
* alguses oli [http://www.csl.mtu.edu/cs4411.ck/www/NOTES/process/fork/create.html fork()], hea [https://computing.llnl.gov/tutorials/pthreads/ pthreads tutorial]. | ** alguses oli [http://www.csl.mtu.edu/cs4411.ck/www/NOTES/process/fork/create.html fork()], hea [https://computing.llnl.gov/tutorials/pthreads/ pthreads tutorial]. | ||
6) Mapreduce ja memcached: mis need on ja tööpõhimõtted. | |||
* [ | * [https://en.wikipedia.org/wiki/MapReduce Mapreduce vikipeedias] | ||
* [http://www.majordojo.com/2007/03/memcached-howto.php memcached ülevaade] | * [http://www.majordojo.com/2007/03/memcached-howto.php memcached ülevaade] | ||
Viimane redaktsioon: 17. mai 2018, kell 09:30
Eksamil tuleb neli kirjalikku küsimust alltoodud teemade kohta, seejuures ühe teema kohta ei tule mitut küsimust. Vastuses on sul vaja selgitada ja/või tuua näiteid ja/või pseudokoodi. Otseseid programmeerimisülesandeid ei tule.
Alltoodud materjalid ei ole nö kohustuslikud, vaid ainult soovituslikud: hea mõte on otsida ja lugeda ise juurde. Samuti leiad siintoodud materjalides - näiteks wikipedia artiklites - väga spetsiifilist tausta ja detaile: seda eksamil ei küsita. Küsimuste fookus on olulistel toimimispõhimõtetel - et sa saaksid aru, mis asi on ja kuidas põhimõtteliselt käib - ning veidi ka rakendamisvaldkondadest/fookusest (ehk, milleks hea).
1) API protokollid, konkreetsemalt HTTP 1.0, JSON, XML-RPC, SOAP, REST (põhipunktid). HTTP 2.0, XML Schema, websockets, WSDL, UDDI, WS-I jne küsimusi ei tule.
- Memod ja lingikogud loengust: võrgurakenduste protokollid 1,võrgurakenduste protokollid 2, võrgurakenduste protokollid 3
- Otsi ja loe veidi ise juurde.
2) Vanemate P2P süsteemide põhimõtted, konkreetsemalt arusaamine järgmiste süsteemide põhimõtetest: Esialgne Napster, Gnutella, superpeer mehhanism (näiteks vana Skype).
3) DHT (näiteks Chord või Kademlia), Bittorrent ja TOR. Mehhanismid ja eri arhitektuuride eesmärgid/fookused/eelised. Bittorrenti mehhanism ja optimeeringud. NB! Mix networkinduse kohta küsimusi ei tule, erandina võib tulla küsimus TORi kohta.
- Sama Loengus tehtud ülevaade eri P2P tehnoloogiatest: järgmised osad
- DHT ülevaade wikipedias
- Chord:
- Chord wikipedias
- Põhimaterjal - Chordi põhimõtted - lugeda kuni Ivy osani (Ivy on antud juhul teemaväline)
- Kademlia:
- Bittorrenti andmevahetuspõhimõtted
- TOR
4) Blockchain ja bitcoin.
- Wikipedia ülevaade kogu teemast
- Gentle intro 1
- Gentle intro 2
- Gentle intro 3
- Bitcoini klientide leidmine
- Blockchaini demo: vajuta üleval "Hash", "Block", "Blockchain" linkidele ja proovi igal lehel ise datat muuta ja "Mine" nupule vajutada. "Mine" teeb proof-of-worki ehk otsib random stringi (nonce) mille lisamisel datale saame mitme nulliga algava hashi.
5) Paralleelrehendused (sh Lukustamine, transaktsioonid, spinlock, optimistlik paralleelsuskontroll)
- Põhiline Paralleelsus andmebaasides: slaidid.
- Lisaks võib lugeda
6) Mapreduce ja memcached: mis need on ja tööpõhimõtted.