150 likes | 314 Views
SignalR ali kako prizanesti spletnemu strežniku. Bine Gorjanc, Bika s.p. Kaj je SignalR?. SignalR je integrirana knjižnica za strežnik in klienta, ki omogoča dvosmerno komunikacijo med .NET strežnikom in klientom V našem primeru je klient brskalnik, ni pa to nujno. Kaj to pomeni v praksi?
E N D
SignalR ali kako prizanesti spletnemu strežniku Bine Gorjanc, Bika s.p.
Kaj je SignalR? • SignalR je integrirana knjižnica za strežnik in klienta, ki omogoča dvosmerno komunikacijo med .NET strežnikom in klientom • V našem primeru je klient brskalnik, ni pa to nujno
Kaj to pomeni v praksi? • Strežnik lahko iz okolja .NET kliče Javascript metode na klientu
Kako deluje? • Tehnologija Web Socket – trajna dvosmerna povezava med strežnikom in klientom • Komunikacija še vedno poteka skozi port 80 – ni težav s požarnimi zidovi
Zakaj bi me to zanimalo? • Scenarij: spletna stran z vključenim gradnikom, ki prikazuje pesem, trenutno predvajano prek Shoutcast strežnika • Ena od rešitev: pošiljanje povpraševanj klienta na strežnik na nek časovni interval (polling)
Slabosti: • Veliko poizvedb in posledično velika obremenitev strežnika • Z večanjem časovnega intervala se manjša obremenitev, a povečuje možnost, da klient nima najnovejših podatkov
Ob posodobitvi podatkov dobijo nove podatke vsi klienti naenkrat • Močno zmanjšana obremenitev spletnega strežnika
Slabosti • Še vedno je precej nova tehnologija, zato še ni 100% podprta. • Zahteva IIS8 • Pri brskalnikih je podpora implementirana v Internet Explorerju 10+, ostali večji brskalniki Web Sockete že podpirajo • Če podpore za Web Socket ni, SignalR avtomatsko uporabi “long polling”. • Ta deluje povsod, a zasede eno povezavo na strežniku!
Dobro je vedeti • Podpora skupinam uporabnikov (Groups) • Podpora “cross-domain” zahtevam • Postavljanje vrednosti spremenljivk za round-trip server/klient • Orodje za testiranje obremenitve: Crank
Uporabne povezave • https://github.com/SignalR/SignalR/wiki • http://www.hanselman.com/blog/AsynchronousScalableWebApplicationsWithRealtimePersistentLongrunningConnectionsWithSignalR.aspx • http://msdn.microsoft.com/en-us/magazine/hh852586.aspx(Build a Progress Bar with SignalR)
VPRAŠANJA Prosimo vas,dapokoncupredavanjaizpolnitevprašalnike. Nekogaizmed vas bomonagradili z NokioLumia 820. Vprašalnikibodoposlaninavaš e-naslov, dostopni pa bodotudiprekoprofilanaspletnemmestuwww.ntk.si Najlepšahvala! Iščete kakovostno izobraževanje? Obiščite Microsoftove izobraževalne centre: Uspeh = Znanje = Microsoftovi uradni tečaji + predavatelji Microsoft CertifiedTrainer