Optimalizace výkonu webových aplikací
Upcoming SlideShare
Loading in...5
×
 

Optimalizace výkonu webových aplikací

on

  • 3,068 views

 

Statistics

Views

Total Views
3,068
Slideshare-icon Views on SlideShare
3,014
Embed Views
54

Actions

Likes
1
Downloads
14
Comments
0

4 Embeds 54

http://www.michalspacek.cz 37
http://a0.twimg.com 9
http://www.linkedin.com 7
http://us-w1.rockmelt.com 1

Accessibility

Categories

Upload Details

Uploaded via as OpenOffice

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Optimalizace výkonu webových aplikací Optimalizace výkonu webových aplikací Presentation Transcript

    • Optimalizace výkonu webových aplikací Michal Špaček, Skype; #4IT445 2011 , Praha @spazef0rze, www.michalspacek.cz
    • Optimalizace výkonu = zvyšování rychlosti
        Slide
    • Z tohoto
        Slide
    • uděláme tohle
        Slide
    • nebo aspoň tohle
        Slide
    • Zvyšování rychlosti dřívější zobrazení
    • < 5 sec Stránku zobrazit do 5 vteřin
    • 1 milión požadavků za den Při dané zátěži
    • Jak měřit dobu zobrazení?
      • Slide
    •  
      • Slide
    • Jak zrychlit?
    • vizuálně
        Slide
    • Pomocí animací „ zrychlíme“ načítání
    • Někdy i několikanásobně
        Slide
    • Jak opravdu zrychlit?
    • CSS Sprites Snížit počet HTTP požadavků pomocí
    • Logo je součástí jednoho souboru s mnoha dalšími ikonami
        Slide
      • Slide
    • Které jsou vybírány pomocí CSS
        Slide
    • CDN Content Delivery Network
    • Facebook používá CDN pro statické soubory
        Slide
    • Legenda: Původní server Uzel s kopií dat Návštěvník Spojení wpbeginner.com Takto funguje CDN
        Slide
    • Poskytovatelé CDN
    • Cache hlavičky v HTTP Pro statický obsah řeší HTTP server Pro správnou funkci nejen CDN a Sprites
    • Last-Modified If-Modified-Since V HTTP odpovědi V HTTP dotazu, řeší CDN
    • ETag If-None-Match V HTTP odpovědi V HTTP dotazu, řeší CDN
    • Content-Length Content-Type Lze poslat více požadavků v jednom spojení Umm, prostě správně říci, co posílám za data
    • http://www.slideshare.net/spaze/caching-strategies Pro víc info o HTTP cache viz moje prezentace
    • Zrychlení dotazů do databáze
    • Je třeba použít indexy
        Slide
    • EXPLAIN SELECT … Prováděcí plán nám poví, jestli se indexy používají Plán zjistíme pomocí SQL příkazu EXPLAIN
    • Výstup
        Slide
    • Aplikační cache memcached, APC
    • Ukládání výsledků dotazů do memcached
        Slide
    • PHP extenze, lze cachovat např. konfiguraci z ini/xml souborů (také opcode cache)
        Slide
    • na více serverů Rozložení zátěže Více serverů pro db Více serverů pro aplikaci Více serverů pro data (CDN)
        Slide
    • Pomalé/nejisté operace Odesílání mailů Převod IP na jméno (DNS)
    • pomocí externího programu, aby se nezpomalovalo zobrazení stránky Provádět asynchronně
    • Rychlost není VŠE
        Slide
    • Bezpečnost!
        Slide
    • Mohou snížit výkon, posílají se dva dotazy (připrav a vykonej), ale ochrání proti SQL Injection Prepared statements
    • Poté vykonání, kde se pošlou pouze data, která se na serveru dosadí na místo otazníků INSERT INTO table (name, price) VALUES (?, ?) Příprava dotazu, místo hodnot otazníky
      • Díky za pozornost! Michal Špaček, @spazef0rze http://jobs.skype.com/