Schnell Henrik, Molnár Gábor Szarvas Attila, Szeberényi Imre · Javascript több szálon...
Transcript of Schnell Henrik, Molnár Gábor Szarvas Attila, Szeberényi Imre · Javascript több szálon...
M Ű E G Y E T E M 1 7 8 2
Munkában a böngészők Schnell Henrik, Molnár Gábor
Szarvas Attila, Szeberényi Imre
BME IK, BME IIT
NETWORKSHOP 2011
Tartalom
• Önkéntes gridek a kutatásban
• Böngészők szerepe
• Böngésző mint grid platform
• Nyelvi lehetőségek
• Technológiák
• Bemutató
• További tervek
2 Networkshop, Kaposvár 2011. április 27-29.
Önkéntes gridek szerepe
• Közel 15 éves múlt bizonyította az
erejét a tudományos felhasználásban • SETI@home, MilkyWay@home
• Einstein@home
• NOW
• distributed.net ‘97
• Ipari/üzleti célú felhasználás
• irodai gépek összekapcsolása (gyógyszeripar)
• közösségi portálokon (pl. facebook) keletkező
számításigényes feladatok megoldása Grid
erőforrásokkal - Web2grid projekt
3 Networkshop, Kaposvár 2011. április 27-29.
Böngészők szerepe
• Új felhasználói szokások
• Webes alkalmazások, távoli adatok
• Böngészők szerepe megnő
• Helyi gépen korlátozott jogosultságok
• Böngésző mint operációs rendszer
• Chrome OS http://www.google.com/chromeos/
Networkshop, Kaposvár 2011. április 27-29. 4
Felhasználói identitás
Lokális identitás Webes identitás
Networkshop, Kaposvár 2011. április 27-29. 5
Böngészők!
Böngésző mint grid platform
Előnyök:
• Platform és OS független
• Hatalmas felhasználói donor bázis
• Nincs szükség telepítésre
• Pofonegyszerű használat
• Weboldalakba ágyazhatóság
Networkshop, Kaposvár 2011. április 27-29. 6
Böngésző mint grid platform
Igények:
• Natív kódhoz közeli sebesség
• Biztonságos kódfuttatás, sandbox
• Háttérben futás, ne zavarjon
• Perzisztencia, lokális tárhely
• HTTP kommunikáció grid szerverekkel
Networkshop, Kaposvár 2011. április 27-29. 7
Nyelvi lehetőségek
Flash / Java
+ Gyorsabb
+ Fordítás idejű hibák
- Platformok hiánya
- Sok memória
- Lassú betöltés
- Nehézkes idegen
kódfuttatás
JavaScript / haXe
+ Minden platformon
+ Kevés memória
+ Idegen kódfuttatás
+ Dinamikus fejlődés
+ Böngészők versenye
- Van, ahol lassabb
- Futás idejű hibák
- OOP támogatás hiánya
Networkshop, Kaposvár 2011. április 27-29. 8
haXe
• JavaScriptre fordítható
• Típusos, objektumorientált
• Nyílt forrás, aktív közösség
• Hibák fordítási időben
• Intellisense
• JavaScript, Flash, PHP, C++, C#, Java • http://haxe.org
9 Networkshop, Kaposvár 2011. április 27-29.
Teljesítmény
10 Networkshop, Kaposvár 2011. április 27-29.
A kisebb érték jobb!
Javascript több szálon
Javascript HTML oldalon:
• Egyszálú futtatás
• Hosszú számításnál a UI-t blokkolja
WebWorkers:
• Külön szálon fut
• A DOM elérhetetlen – biztonságos
• Üzenetekkel kommunikálhat a HTML oldallal
• Számításigényes kódok futtatására ideális
Networkshop, Kaposvár 2011. április 27-29. 11
CORS
• Same Domain Policy
• Megoldás: Cross Origin Resource Sharing
• A cél szerver engedélyezi speciális HTTP headerrel
Networkshop, Kaposvár 2011. április 27-29. 12
Local Storage
• Perzisztens tárhely
• Domain-hez kötött
• Kulcs-érték párokat tárol
• Mérete 2-10Mb
• Tárolja:
• Az alkalmazás beállításait
• A megkezdett munkák adatait
Networkshop, Kaposvár 2011. április 27-29. 13
Támogatottság
14 Networkshop, Kaposvár 2011. április 27-29.
WebWorkers
CORS
LocalStorage
Architektúra
Networkshop, Kaposvár 2011. április 27-29. 15
Bemutató
• Prototípus
• haXe kliens
• Beágyazás koncepció
Videó
Networkshop, Kaposvár 2011. április 27-29. 16
További tervek
• Cél egy JavaScript / haXe library létrehozása
• Két lehetséges alkalmazás
• Stand-alone grid kliens, pl. BOINC
• Beágyazva weboldalakba, háttérben futtatva
• A kód bővíthetősége, újrafelhasználhatósága
fontos szempont, többféle WorkSource
• A forráskód megnyitása
• WebCL
Networkshop, Kaposvár 2011. április 27-29. 17
Köszönjük
http://webcomputing.iit.bme.hu
Köszönjük a figyelmet!
Kérdések?
Networkshop, Kaposvár 2011. április 27-29. 18