ASP.NET MVC raamistikust tulenevad võimekused

Preview:

DESCRIPTION

ASP.NET MVC raamistikust tulenevad võimekused. Mait Poska & Andres Käver, IT Kolledž 2013. Jõudlus. Mis mõjutab jõudlust? Mis on jõudlus? Kuidas mõõta? Probleemid?. Väljundi puhverdamine(Output Caching. Deklaratsioon Atribuudid Duration(nõutud) VarByParam(nõutud) - PowerPoint PPT Presentation

Citation preview

ASP.NET MVC RAAMISTIKUST

TULENEVAD VÕIMEKUSED

Mait Poska & Andres Käver, IT Kolledž 20131

Jõudlus Mis mõjutab jõudlust? Mis on jõudlus? Kuidas mõõta? Probleemid?

2

Väljundi puhverdamine(Output Caching

• Deklaratsioon• Atribuudid

• Duration(nõutud)• VarByParam(nõutud)

• Cacheprofile web.config• Ei lisa vaatesse!• Miks?

3

Väljundi puhverdamine(2) Atribuudid

VarByParam – none, *, nameLocation – asukoht(server, klient, mõlemad)VarByHeader – HTTP headerVarByCustom – Staatiline meetod

Global.asax’is. Tuleb ise implementeeridaSqlDependency – jälgib andmebaasi tabelis

toimuvaid muudatusi

4

OutPutCache

5

Andmete puhverdamine Outputcache salvestab serverisse lehe

HTML väljundi Probleem

Erinevad lehed pärivad sarnaseid andmeidErinevaid lehti on palju ja seega ei

saavutata olulist jõudluse võitu

Lahendus?

6

Andmete puhverdamine(Data Caching) ASP.NET Cache API Võimaldab puhvrisse salvestada kõiki

andmeobjekte Cache Dependencies(Failid,

andmebaas) Ajamäärused

7

Cache API HttpContext.Cache.Insert(..

Key – võti, mille järgi otsitakseValue – väärtus, mis lisatakse puhvrisseDependencies – SQL\FileAbsoluteExpiration – Absoluutne

aegumisaegSlidingExpiration – Sõltub aegumisaeg

8

Cache API(2)

9

Cache API praktikas Loo eraldi klass Hoolitse selle eest, et puhvrit ka

kasutatakse Vajadusel täida puhvrit asünkroonselt Mõtle alati läbi, mida puhverdada Jälgi serveri mälukasutust Jälgi andmebaasi tehtavaid päringuid

10

SQLCachedependency

11

Using System.Web.Caching

Web.config

Lokaliseerimine Erinevates kultuurides erinevad keeled,

erinevad vormingud väärtuste erinevusteks

CurrentCulture – väärtuste kuvamine CurrentCultureUI – UI renderdamisel.

(Kultuur USA, UI Kanada) Näide: DateTime Globalization

12

Lokaliseerimine Web.config

AutomaatneCulture=“auto“UICulture=“auto“

Info võetakse brauseristNB! Rahaühikud

13

Ressursid (.resx andmefailid) Resx failid hoiavad lokaliseeritud teksti Vastavalt failinimele on võimalik

erinevatele kultuuridele anda erinevad väärtused

Võti-väärtus paar Näide:

Resources.resx – peamine fail(vaikimisi)Resources.en.resx – hoiab ingliskeelseid

tõlkeid

14

Ressursid Staatiliste teksti asemel nö „võtmed“.

Parem hallatavus Ära lisa ressursse App_Globalresources

kausta NB! Vaikimisi genereeritakse valmis

klass, mis on Internal. Tuleb kasutada public varianti.

15

Ressursid

16

Vigade jälgimine Serveris ja ka enda arvutis

Computer ManagementLogitakse kõik vead(sõltub eelkõige

machine.config)Võimalik jälgida veebirakendusega esinenud

probleeme

17

Jõudluse jälgimine(2) Performance Monitor (perfmon) Graafiline liides Võimalik jälgida sisuliselst kõike

18

Autentimine Kasutaja kindlaks tegemine(kes on?) ASP.NET võimalused

Forms authenticationOpenID/Oauth Windows Authentication(Intranet)

19

Windows authentication Sisevõrgust Demo

20

[Authorize] [Authorize]

Ilma parameetriteta lubatakse ainult autentitud kasutaja

Parameeter võib olla kontrolleri peal või konkreetse action’i juuresKontrolleri peal kehtib terve kontrolleri kohtaAction’i peal kehtib ainult selles

Roles – rollid, kes võivad vaadata Users – kasutajad, kes võivad vaadata

21

[Authorize]

22

Vaates

OpenID/OAuth App_Start/Authconfig.cs Vajalik on enne oma rakendus

registreerida Appid/appsecret Olemasolevatest ei nõua ainult Google

registreerimist

23

TÄNAN

24