0
OPTYMALIZACJA SERWISÓW WWW CZĘŚĆ 1




                     Elbląg 2009
                    Godzina 3:43
O mnie


Sławomir Pawęska – programista PHP

Zdarza mi się widzied:
• fotka.pl
• emuzyka.pl
• swistak.pl
• itd…



2009-01...
O czym dziś będzie?




• tips&tricks
                      Sprawy sądowe i zobowiązania
• CSS sprites
• minify
• (mem)cac...
Jaka optymalizacja marnuje Twój czas?




$max = count($array);
                      Sprawy sądowe i zobowiązania
for ($i...
Jaka optymalizacja marnuje Twój czas?




if (!isset($foo{5})) { echo quot;Foo is too shortquot;; }
                      ...
Czy to naprawde zysk?




0,000000001
                   Sprawy sądowe i zobowiązania
//is faster than
0,000000000002




...
Czy sprawdzam to co czytam?




Komentarze zamulają kod!
                      Sprawy sądowe i zobowiązania


Tak – ale w ...
CZY JEST NA SALI PROGRAMISTA? :>
Może mały test




                  Sprawy sądowe i zobowiązania
                     ++i      czy      i++

            ...
Może mały test




                  Sprawy sądowe i zobowiązania
                     ++i       >       i++

            ...
Może mały test




                 Sprawy sądowe i zobowiązania
                    ++i       >       i++

              ...
JEŚLI NIE 0,0000000000001 TO CO?
Jakob Nielsen odpowiada


• 10 sekund to maksimum jakie user potrafi spędzid
na oczekiwaniu na załadowanie się strony
    ...
Lubię Yahoo




              Sprawy sądowe i zobowiązania




2009-01-16
Kilka liczb




• HTML                     5%-38%
                   Sprawy sądowe i zobowiązania


• CSS/JS/Images       ...
Lubię Yahoo




              Sprawy sądowe i zobowiązania




2009-01-16
Może się mylą?




                 Sprawy sądowe i zobowiązania




2009-01-16
Przyspieszę Twój internet ;)


• Internet Explorer
             HKEY_CURRENT_USER  Software  Microsoft 
                  ...
Ale nie krzywdź sieci




                        Sprawy sądowe i zobowiązania




2009-01-16
Inżynier ma pomysł!




• 20 obrazków                  36x36px 0.9Kb
                      Sprawy sądowe i zobowiązania


...
Co z tymi hostami?




                     Sprawy sądowe i zobowiązania




2009-01-16
Wnioski




• Yahoo
                 Sprawy sądowe i zobowiązania
      quot;muszę zmienid kompaquot;

• reszta
       quo...
CSS SPRITES RATUNKIEM
Ale o co chodzi?




#rss {                    Sprawy sądowe i zobowiązania
  background-image: url(sprite.png);
  backgro...
Czy ktoś z tego korzysta?




                     Sprawy sądowe i zobowiązania




2009-01-16
Pomocnik




             Sprawy sądowe i zobowiązania




2009-01-16
MAŁE JEST PIĘKNE
Czym jest CSS/JS minify




• białe znaki, komentarze
                    Sprawy sądowe i zobowiązania




• zaciemnianie
...
Jaki jest zysk?




                                            Full Source        Minified
                              ...
PRZEJDŹMY DO CZEGOŚ CIEKAWSZEGO
Site


                                                Static
             Apache

                      Sprawy sądowe i z...
Baza danych


• index'y
        - EXPLAIN
                     Sprawy sądowe i zobowiązania
• dzielenie tabel
• cfg (RAM i...
Static


• dużo zapytao
      - JS
                   Sprawy sądowe i zobowiązania
      - CSS
      - małe obrazki
• mało...
Static




• Apache się nie nadaje!
                   Sprawy sądowe i zobowiązania
      - wątki

• Nginx/Lightppd




20...
Dynamic




• niewiele tu osiągniemy
                      Sprawy sądowe i zobowiązania
       - cfg (ilośd połączeo)

• k...
Cache




• dla static
                    Sprawy sądowe i zobowiązania
       - varnish
       - squid
• dla db
       - ...
Warto sprawdzid




• http://highscalability.com/
                     Sprawy sądowe i zobowiązania
• http://yuiblog.com/b...
CDN (JUŻ ZA CHWILĘ ;)
Upcoming SlideShare
Loading in...5
×

Optymalizacja serwisów WWW

507

Published on

Prezentacja z Olcamp v7 Sławka Pawęski (Grupa Fotka) nt. Optymalizacji serwisów www

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
507
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
2
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Transcript of "Optymalizacja serwisów WWW"

  1. 1. OPTYMALIZACJA SERWISÓW WWW CZĘŚĆ 1 Elbląg 2009 Godzina 3:43
  2. 2. O mnie Sławomir Pawęska – programista PHP Zdarza mi się widzied: • fotka.pl • emuzyka.pl • swistak.pl • itd… 2009-01-16
  3. 3. O czym dziś będzie? • tips&tricks Sprawy sądowe i zobowiązania • CSS sprites • minify • (mem)cache • varnish, nginx, lightppd, … 2009-01-16
  4. 4. Jaka optymalizacja marnuje Twój czas? $max = count($array); Sprawy sądowe i zobowiązania for ($i = 0; $i < $max; $i++) //is faster than for ($i = 0; $i < count($array); $i++) 2009-01-16
  5. 5. Jaka optymalizacja marnuje Twój czas? if (!isset($foo{5})) { echo quot;Foo is too shortquot;; } Sprawy sądowe i zobowiązania //is faster than if (strlen($foo) < 5) { echo quot;Foo is too shortquot;; } 2009-01-16
  6. 6. Czy to naprawde zysk? 0,000000001 Sprawy sądowe i zobowiązania //is faster than 0,000000000002 2009-01-16
  7. 7. Czy sprawdzam to co czytam? Komentarze zamulają kod! Sprawy sądowe i zobowiązania Tak – ale w PHP3 gdy kod był interpretowany linia po linii a o APC nikt jeszcze nawet nie marzył ;) 2009-01-16
  8. 8. CZY JEST NA SALI PROGRAMISTA? :>
  9. 9. Może mały test Sprawy sądowe i zobowiązania ++i czy i++ ++i;++i; czy 2+=i 2009-01-16
  10. 10. Może mały test Sprawy sądowe i zobowiązania ++i > i++ ++i;++i; czy 2+=i 2009-01-16
  11. 11. Może mały test Sprawy sądowe i zobowiązania ++i > i++ ++i;++i; < 2+=i 2009-01-16
  12. 12. JEŚLI NIE 0,0000000000001 TO CO?
  13. 13. Jakob Nielsen odpowiada • 10 sekund to maksimum jakie user potrafi spędzid na oczekiwaniu na załadowanie się strony Sprawy sądowe i zobowiązania • 15 sekund akceptowalne jest wyłącznie dla kilku kluczowych (dla usera) stron • jakie masz łącze? 2009-01-16
  14. 14. Lubię Yahoo Sprawy sądowe i zobowiązania 2009-01-16
  15. 15. Kilka liczb • HTML 5%-38% Sprawy sądowe i zobowiązania • CSS/JS/Images 62%-95% • 2-4 hosty dla połączeo 2009-01-16
  16. 16. Lubię Yahoo Sprawy sądowe i zobowiązania 2009-01-16
  17. 17. Może się mylą? Sprawy sądowe i zobowiązania 2009-01-16
  18. 18. Przyspieszę Twój internet ;) • Internet Explorer HKEY_CURRENT_USER Software Microsoft Sprawy sądowe i zobowiązania Windows CurrentVersion Internet Settings • Firefox About:config 2009-01-16
  19. 19. Ale nie krzywdź sieci Sprawy sądowe i zobowiązania 2009-01-16
  20. 20. Inżynier ma pomysł! • 20 obrazków 36x36px 0.9Kb Sprawy sądowe i zobowiązania • 20 obrazków 116x61px 3.4Kb • różna liczba hostów (1,2,4,5,10) 2009-01-16
  21. 21. Co z tymi hostami? Sprawy sądowe i zobowiązania 2009-01-16
  22. 22. Wnioski • Yahoo Sprawy sądowe i zobowiązania quot;muszę zmienid kompaquot; • reszta quot;zbyt duże opóźnienia na DNSquot; 2009-01-16
  23. 23. CSS SPRITES RATUNKIEM
  24. 24. Ale o co chodzi? #rss { Sprawy sądowe i zobowiązania background-image: url(sprite.png); background-position: -8px -40px; width: 16px; height: 16px; } 2009-01-16
  25. 25. Czy ktoś z tego korzysta? Sprawy sądowe i zobowiązania 2009-01-16
  26. 26. Pomocnik Sprawy sądowe i zobowiązania 2009-01-16
  27. 27. MAŁE JEST PIĘKNE
  28. 28. Czym jest CSS/JS minify • białe znaki, komentarze Sprawy sądowe i zobowiązania • zaciemnianie 2009-01-16
  29. 29. Jaki jest zysk? Full Source Minified Sprawy sądowe i zobowiązania Uncompressed 78151 38051 Compressed with gzip 15207 10799 2009-01-16
  30. 30. PRZEJDŹMY DO CZEGOŚ CIEKAWSZEGO
  31. 31. Site Static Apache Sprawy sądowe i zobowiązania Częste Mało DB zapytania zapytao Cache 2009-01-16
  32. 32. Baza danych • index'y - EXPLAIN Sprawy sądowe i zobowiązania • dzielenie tabel • cfg (RAM i ilośd połączeo) • master/slave • nie lubimy JOINa 2009-01-16
  33. 33. Static • dużo zapytao - JS Sprawy sądowe i zobowiązania - CSS - małe obrazki • mało zapytao - duże obrazki (np. galeria) - S3? 2009-01-16
  34. 34. Static • Apache się nie nadaje! Sprawy sądowe i zobowiązania - wątki • Nginx/Lightppd 2009-01-16
  35. 35. Dynamic • niewiele tu osiągniemy Sprawy sądowe i zobowiązania - cfg (ilośd połączeo) • kupujemy maszyny ;) 2009-01-16
  36. 36. Cache • dla static Sprawy sądowe i zobowiązania - varnish - squid • dla db - memcache 2009-01-16
  37. 37. Warto sprawdzid • http://highscalability.com/ Sprawy sądowe i zobowiązania • http://yuiblog.com/blog/ • http://notatnik.mekk.waw.pl/ • http://www.useit.com/ • http://ui.blox.pl/html 2009-01-16
  38. 38. CDN (JUŻ ZA CHWILĘ ;)
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×