際際滷

際際滷Share a Scribd company logo
Extremely
Help, mijn site wordt populair!                   evolved
                                                  solutions
Schalen en Optimalisatie
                                                  Lorem ipsum dolor sit amet, cons
                                                  ectetuer adipiscing elit. Donec
                                                  sagittis sagittis urna. Aliquam ipsum.

                                                  Nunc in leo sed ante lacinia volutpat.

                                                  Pellentesque urna diam, aliquet
                                                  non, ullamcorper ut, volutpat lacinia,
                                                  purus.




Frank Louwers
Openminds bvba



                                                  Zilverenberg 39 - B-9000 Gent - Belgium
                                                  Tel: +32 9 225 82 91 - Fax: +32 9 224 46 57




                           pub_openminds.indd 1                                                 11/15/06 10:53:57 AM
Oh hai!




Frank Louwers
co-founder & Mr Operations @ Openminds
Openminds
Vanavond
        Schaalbaarheid                                                    Extremely
               wat                                                        evolved
                                                                           solutions
               hoe                                                        Lorem ipsum dolor sit amet, cons




           
                                                                           ectetuer adipiscing elit. Donec
                                                                           sagittis sagittis urna. Aliquam ipsum.

                => theoretisch                                             Nunc in leo sed ante lacinia volutpat.

                                                                           Pellentesque urna diam, aliquet
                                                                           non, ullamcorper ut, volutpat lacinia,
                                                                           purus.




        Pauze
        Tips voor webbouwers
               meten is weten
               eenvoudige technieken met snel resultaat
               hulp van uw hoster                                         Zilverenberg 39 - B-9000 Gent - Belgium
                                                                           Tel: +32 9 225 82 91 - Fax: +32 9 224 46 57




Frank Louwers                                                                 Netlab - Schaalbaarheid en Optimalisatie
                                                    pub_openminds.indd 1                                                 11/15/06 10:53:5
Schaalbaarheid en mythes
        Schaalbaarheid gaat niet over:
                                 Extremely
                                                               evolved
               technologie Z                                  solutions

           
                                                               Lorem ipsum dolor sit amet, cons




                ruwe performantie en snelheid
                                                               ectetuer adipiscing elit. Donec
                                                               sagittis sagittis urna. Aliquam ipsum.

                                                               Nunc in leo sed ante lacinia volutpat.

                                                               Pellentesque urna diam, aliquet
                                                               non, ullamcorper ut, volutpat lacinia,




               veel enterprise level servers
                                                               purus.




               zeker niet over programmeertaal X of Y



                                                               Zilverenberg 39 - B-9000 Gent - Belgium
                                                               Tel: +32 9 225 82 91 - Fax: +32 9 224 46 57




Frank Louwers                                                     Netlab - Schaalbaarheid en Optimalisatie
                                        pub_openminds.indd 1                                                 11/15/06 10:53:5
Languages dont scale!



                鞄岳岳沿://鍖i界一姻.界看馨/沿鞄看岳看壊/鉛庄逮/122525716
鞄岳岳沿://鍖i界一姻.界看馨/沿鞄看岳看壊/界看糸艶鍖n/46216344/
Architectures Scale
         鞄岳岳沿://鍖i界一姻.界看馨/沿鞄看岳看壊/岳鞄看馨温壊鞄温敬一/44667887/
Schaalbaarheid
        Schaalbaarheid gaat over: Extremely
                                                                evolved
               toename aantal bezoekers                        solutions

           
                                                                Lorem ipsum dolor sit amet, cons




                toename hoeveelheid data
                                                                ectetuer adipiscing elit. Donec
                                                                sagittis sagittis urna. Aliquam ipsum.

                                                                Nunc in leo sed ante lacinia volutpat.

                                                                Pellentesque urna diam, aliquet
                                                                non, ullamcorper ut, volutpat lacinia,




               beheersbaarheid van dit alles
                                                                purus.




                                                                Zilverenberg 39 - B-9000 Gent - Belgium
                                                                Tel: +32 9 225 82 91 - Fax: +32 9 224 46 57




Frank Louwers                                                      Netlab - Schaalbaarheid en Optimalisatie
                                         pub_openminds.indd 1                                                 11/15/06 10:53:5
Schalen: H & V
        Vertikaal schalen                                                      Extremely
               dikkere doos                                                 evolved
                                                                               solutions
               op zich eenvoudig                                              Lorem ipsum dolor sit amet, cons




           
                                                                               ectetuer adipiscing elit. Donec
                                                                               sagittis sagittis urna. Aliquam ipsum.

                prijs: dubbel zo krachtige server kost meer dan dubbel zoveel  Nunc in leo sed ante lacinia volutpat.

                                                                               Pellentesque urna diam, aliquet




                
                                                                               non, ullamcorper ut, volutpat lacinia,


                    maar wat kost software redesignen?
                                                                               purus.




               biedt GEEN HA (high availability)
               soms juiste keuze
                   complexe monolitische applicaties
                   databases

                                                                               Zilverenberg 39 - B-9000 Gent - Belgium
                                                                               Tel: +32 9 225 82 91 - Fax: +32 9 224 46 57




Frank Louwers                                                                     Netlab - Schaalbaarheid en Optimalisatie
                                                        pub_openminds.indd 1                                                 11/15/06 10:53:5
Schalen: H & V
        Horizontaal schalen                                                    Extremely
               meerdere servers                                               evolved
                                                                               solutions
               gespecialiseerde servers                                       Lorem ipsum dolor sit amet, cons
                                                                               ectetuer adipiscing elit. Donec



                
                                                                               sagittis sagittis urna. Aliquam ipsum.

                    database, loadbalancing, maar ook bv speci鍖eke delen       Nunc in leo sed ante lacinia volutpat.

                                                                               Pellentesque urna diam, aliquet
                                                                               non, ullamcorper ut, volutpat lacinia,



                       upload / authenticatie / video transcoding
                                                                               purus.




                   vereist soms applicatie aanpassingen (als niet voorzien)
                   maar kan snel (als hoster capaciteit heeft)
                   en tijdelijk (bv voor 2 dagen tot het Digg/Techcrunch
                    effect over is)


                                                                               Zilverenberg 39 - B-9000 Gent - Belgium
                                                                               Tel: +32 9 225 82 91 - Fax: +32 9 224 46 57




Frank Louwers                                                                     Netlab - Schaalbaarheid en Optimalisatie
                                                        pub_openminds.indd 1                                                 11/15/06 10:53:5
Applicatie servers
          eenvoudig te schalen als Shared Nothing
                                                                             Extremely
               schuift probleem down the stack                            evolved
          belangrijkste: sessie-data                                        solutions

           
                                                                             Lorem ipsum dolor sit amet, cons


                niet elke request op zelfde server                           ectetuer adipiscing elit. Donec
                                                                             sagittis sagittis urna. Aliquam ipsum.

                                                                             Nunc in leo sed ante lacinia volutpat.




               lokale sessies: slecht
                                                                             Pellentesque urna diam, aliquet
                                                                             non, ullamcorper ut, volutpat lacinia,
                                                                             purus.




                   bv PHP: standaard naar disk
               gecentraliseerde sessies: beter
                   centrale databank of speciale cache (memcache)
                   nadeel: sessiestore moet schalen (down the stack)
               geen sessies: ideaal!
                                                                             Zilverenberg 39 - B-9000 Gent - Belgium
                                                                             Tel: +32 9 225 82 91 - Fax: +32 9 224 46 57




Frank Louwers                                                                   Netlab - Schaalbaarheid en Optimalisatie
                                                      pub_openminds.indd 1                                                 11/15/06 10:53:5
Vergeet cookie store niet!
             http://鍖ickr.com/photos/mr-outdoorguy/2100813932/
Ah, the stack!
       鞄岳岳沿://鍖i界一姻.界看馨/沿鞄看岳看壊/一艶庄岳鞄艶糸糸鉛艶馨温稼/2124245307
Queing systemen
          Wachtrijen
          vaak onderschat, maar zeer handig                                     Extremely
                                                                                 evolved
          voor alles wat parallelliseerbaar is                                  solutions

           
                                                                                 Lorem ipsum dolor sit amet, cons


                image conversion, video transcoding, mail uitsturen, ...         ectetuer adipiscing elit. Donec
                                                                                 sagittis sagittis urna. Aliquam ipsum.

                                                                                 Nunc in leo sed ante lacinia volutpat.




          meestal eenvoudig op te zetten
                                                                                 Pellentesque urna diam, aliquet
                                                                                 non, ullamcorper ut, volutpat lacinia,
                                                                                 purus.




               je stuurt er iets naar toe, je haalt er iets af
          helpen bij schalen, maar schalen zelf iets moeilijker
          ActiveMQ, startling (van Twitter), ...




                                                                                 Zilverenberg 39 - B-9000 Gent - Belgium
                                                                                 Tel: +32 9 225 82 91 - Fax: +32 9 224 46 57




Frank Louwers                                                                       Netlab - Schaalbaarheid en Optimalisatie
                                                          pub_openminds.indd 1                                                 11/15/06 10:53:5
Beste I/O
                                                             Extremely

        Beste I/O: geen I/O                                 evolved
                                                             solutions

        Correctie: geen disk I/O                            Lorem ipsum dolor sit amet, cons
                                                             ectetuer adipiscing elit. Donec
                                                             sagittis sagittis urna. Aliquam ipsum.




        Disks zijn inherent traag, zelfs snelle disks
                                                             Nunc in leo sed ante lacinia volutpat.

                                                             Pellentesque urna diam, aliquet
                                                             non, ullamcorper ut, volutpat lacinia,
                                                             purus.




                                                             Zilverenberg 39 - B-9000 Gent - Belgium
                                                             Tel: +32 9 225 82 91 - Fax: +32 9 224 46 57




Frank Louwers                                                   Netlab - Schaalbaarheid en Optimalisatie
                                      pub_openminds.indd 1                                                 11/15/06 10:53:5
Databanken
          Moeilijkste component om te schalen (tenzij je heel veel 鍖les
           servet)                                         Extremely
                                                                              evolved
          Te weinig Read performantie?                                       solutions
               Meeste webapps doen 80/20 of zelfs 90/10 read/write           Lorem ipsum dolor sit amet, cons
                                                                              ectetuer adipiscing elit. Donec
                                                                              sagittis sagittis urna. Aliquam ipsum.




           
                                                                              Nunc in leo sed ante lacinia volutpat.


                Splits read/writes in uw applicatie en gebruik master-slave   Pellentesque urna diam, aliquet
                                                                              non, ullamcorper ut, volutpat lacinia,
                                                                              purus.




               denormalisatie
                   als het echt niet anders kan
          Te weinig Write performantie?
               Lastig horizontaal te schalen!
               master/master, cluster: zeer complex en lost niet alles op
               partitioning / sharding
                                                                              Zilverenberg 39 - B-9000 Gent - Belgium
                                                                              Tel: +32 9 225 82 91 - Fax: +32 9 224 46 57




Frank Louwers                                                                    Netlab - Schaalbaarheid en Optimalisatie
                                                       pub_openminds.indd 1                                                 11/15/06 10:53:5
Help uw databank!
          Juiste tabelformaat!
               InnoDB heeft row locking                                        Extremely
                                                                                evolved
               MyISAM heeft full text indexes                                  solutions

       
                                                                                Lorem ipsum dolor sit amet, cons


           Juiste queries en datastructuren                                     ectetuer adipiscing elit. Donec
                                                                                sagittis sagittis urna. Aliquam ipsum.

                                                                                Nunc in leo sed ante lacinia volutpat.




               niet ...
                                                                                Pellentesque urna diam, aliquet

                           and category like %3 or like %,3,% or like 3,%
                                                                                non, ullamcorper ut, volutpat lacinia,
                                                                                purus.




               ken uw joins
               GEEN order      by rand()

          Juiste Indexen
               vooral bij veel data, veel verschil!
               stijgt exponentieel met hoeveelheid data
               EXPLAIN    is uw vriend!                                        Zilverenberg 39 - B-9000 Gent - Belgium
                                                                                Tel: +32 9 225 82 91 - Fax: +32 9 224 46 57




Frank Louwers                                                                      Netlab - Schaalbaarheid en Optimalisatie
                                                         pub_openminds.indd 1                                                 11/15/06 10:53:5
Caching
        Caching zorgt dat je niet moet schalen            Extremely

          of toch zo snel niet                            evolved
                                                           solutions

          of maakt het goedkoper                          Lorem ipsum dolor sit amet, cons
                                                           ectetuer adipiscing elit. Donec
                                                           sagittis sagittis urna. Aliquam ipsum.

                                                           Nunc in leo sed ante lacinia volutpat.

                                                           Pellentesque urna diam, aliquet
                                                           non, ullamcorper ut, volutpat lacinia,
                                                           purus.




        Algemene strategie: cache alles wat je kan!
        Cache op alle lagen

                                                           Zilverenberg 39 - B-9000 Gent - Belgium
                                                           Tel: +32 9 225 82 91 - Fax: +32 9 224 46 57




Frank Louwers                                                 Netlab - Schaalbaarheid en Optimalisatie
                                    pub_openminds.indd 1                                                 11/15/06 10:53:5
Caching op alle lagen
          Templates naar applicatie-code
               bv Smarty templates naar PHP                                   Extremely
                                                                               evolved
          Output naar HTML                                                    solutions

           
                                                                               Lorem ipsum dolor sit amet, cons


                hoeveel echt dynamische blokken zitten er op een page?         ectetuer adipiscing elit. Donec
                                                                               sagittis sagittis urna. Aliquam ipsum.

                                                                               Nunc in leo sed ante lacinia volutpat.




               meestal niet zo moeilijk (PHP: ob_ functies)
                                                                               Pellentesque urna diam, aliquet
                                                                               non, ullamcorper ut, volutpat lacinia,
                                                                               purus.




               nadenken over invalidatie
          Object en result caching
               bv lijst van alle categori谷n van een shop, lijst 10 populairste
               memcache! (snel, eenvoudig, schaalt goed)
               externe API calls
                                                                               Zilverenberg 39 - B-9000 Gent - Belgium
                                                                               Tel: +32 9 225 82 91 - Fax: +32 9 224 46 57




Frank Louwers                                                                     Netlab - Schaalbaarheid en Optimalisatie
                                                        pub_openminds.indd 1                                                 11/15/06 10:53:5
Caches: bestaande
          Gebruik bestaande caching systemen!
                                          Extremely
                 Browser cache (juiste parameters doorgeven)
                                                            evolved
                                                            solutions

                 Database cache (MySQL Query cache)
                                                                           Lorem ipsum dolor sit amet, cons
                                                                           ectetuer adipiscing elit. Donec
                                                                           sagittis sagittis urna. Aliquam ipsum.

                                                                           Nunc in leo sed ante lacinia volutpat.




                   Query cache moest correct ingesteld staan
                                                                           Pellentesque urna diam, aliquet
                                                                           non, ullamcorper ut, volutpat lacinia,
                                                                           purus.




                   Opgelet met prepared statements



                                                                           Zilverenberg 39 - B-9000 Gent - Belgium
                                                                           Tel: +32 9 225 82 91 - Fax: +32 9 224 46 57




Frank Louwers                                                                 Netlab - Schaalbaarheid en Optimalisatie
                                                    pub_openminds.indd 1                                                 11/15/06 10:53:5
Files serven
          Files serven is eenvoudig voor een webserver.
                                                            Extremely
           Is bovendien stateless, dus eenvoudig te loadbalancen
                                                             evolved
          Nadenken over:                                                 solutions

           
                                                                          Lorem ipsum dolor sit amet, cons


                鍖les in sync houden?                                      ectetuer adipiscing elit. Donec
                                                                          sagittis sagittis urna. Aliquam ipsum.

                                                                          Nunc in leo sed ante lacinia volutpat.




               versies van 鍖les?
                                                                          Pellentesque urna diam, aliquet
                                                                          non, ullamcorper ut, volutpat lacinia,
                                                                          purus.




          Zorg dat alle 鍖les rechtstreeks geservet worden, buiten uw
           applicatie om
               Zeker niet uit een database!
               Zelfs voor private images
                   tijdelijke urls?
                   cookie based regels?
                                                                          Zilverenberg 39 - B-9000 Gent - Belgium
                                                                          Tel: +32 9 225 82 91 - Fax: +32 9 224 46 57




Frank Louwers                                                                Netlab - Schaalbaarheid en Optimalisatie
                                                   pub_openminds.indd 1                                                 11/15/06 10:53:5
Files opslaan
        In het begin eenvoudig: diskspace tot                Extremely
           ongeveer 2TB per server                            evolved
                                                              solutions

          tot op limiet waar niet meer kan                   Lorem ipsum dolor sit amet, cons
                                                              ectetuer adipiscing elit. Donec
                                                              sagittis sagittis urna. Aliquam ipsum.




       
                                                              Nunc in leo sed ante lacinia volutpat.



           of tot limiet waar disks te traag worden           Pellentesque urna diam, aliquet
                                                              non, ullamcorper ut, volutpat lacinia,
                                                              purus.




          SAN = duur, maar noodzakelijk
          zelfs bij weinig data: opletten voor limieten
            鍖lesystemen worden traag bij 10000 鍖les
            meerdere directories, hashing
                                                              Zilverenberg 39 - B-9000 Gent - Belgium
                                                              Tel: +32 9 225 82 91 - Fax: +32 9 224 46 57




Frank Louwers                                                    Netlab - Schaalbaarheid en Optimalisatie
                                       pub_openminds.indd 1                                                 11/15/06 10:53:5
HA (High Availability)
          Vermijden van SPOFs - Single Point of Failure
          identi鍖ceren en elimineren                                        Extremely
                                                                             evolved
          sommige zeer lastig!                                              solutions

           
                                                                             Lorem ipsum dolor sit amet, cons


                database master                                              ectetuer adipiscing elit. Donec
                                                                             sagittis sagittis urna. Aliquam ipsum.

                                                                             Nunc in leo sed ante lacinia volutpat.




               datacenter?
                                                                             Pellentesque urna diam, aliquet
                                                                             non, ullamcorper ut, volutpat lacinia,
                                                                             purus.




                   meerdere datacenters lost problemen op
                   maar introduceert nieuwe (bv latency en replication)




                                                                             Zilverenberg 39 - B-9000 Gent - Belgium
                                                                             Tel: +32 9 225 82 91 - Fax: +32 9 224 46 57




Frank Louwers                                                                   Netlab - Schaalbaarheid en Optimalisatie
                                                      pub_openminds.indd 1                                                 11/15/06 10:53:5
Pauze!




         鞄岳岳沿://鍖i界一姻.界看馨/沿鞄看岳看壊/恢顎恢恢鉛艶敬姻温沿76/2895595130
Meten is weten
        Vragen beantwoorden als:                                               Extremely
               Hoe snel is mijn applicatie of site eigenlijk?                  evolved
                                                                                solutions
               Hoeveel hits kan ik aan?                                        Lorem ipsum dolor sit amet, cons




           
                                                                                ectetuer adipiscing elit. Donec
                                                                                sagittis sagittis urna. Aliquam ipsum.

                Als ik morgen in de Humo sta, lukt dat?                         Nunc in leo sed ante lacinia volutpat.

                                                                                Pellentesque urna diam, aliquet




           
                                                                                non, ullamcorper ut, volutpat lacinia,


                Als ik straks vermeld wordt op Studio Brussel, kan ik dat aan?
                                                                                purus.




               Wat als ik een nieuwsbrief stuur naar mijn 25000 klanten?


        Experts inhuren?
        Kan ik dit zelf?
                                                                                Zilverenberg 39 - B-9000 Gent - Belgium
                                                                                Tel: +32 9 225 82 91 - Fax: +32 9 224 46 57




Frank Louwers                                                                      Netlab - Schaalbaarheid en Optimalisatie
                                                         pub_openminds.indd 1                                                 11/15/06 10:53:5
Meten kan je zelf
        Eenvoudige tests, eenvoudige tools:                    Extremely
                                                               evolved
                ab (uit de Apache toolkit: http://httpd.apache.org/)
                                                                solutions
               httperf (http://www.hpl.hp.com/research/linux/httperf/)      Lorem ipsum dolor sit amet, cons




        testen 1 hit op 1 pagina
                                                                             ectetuer adipiscing elit. Donec
                                                                             sagittis sagittis urna. Aliquam ipsum.

                                                                             Nunc in leo sed ante lacinia volutpat.

                                                                             Pellentesque urna diam, aliquet
                                                                             non, ullamcorper ut, volutpat lacinia,
                                                                             purus.




               zonder css, js, ajax, images, enz
               vaak meer dan genoeg om een antwoord te krijgen

        Complexere tools
               jmeter
               log replay tools
               kunnen een sessie simuleren, traject volgen                  Zilverenberg 39 - B-9000 Gent - Belgium
                                                                             Tel: +32 9 225 82 91 - Fax: +32 9 224 46 57




Frank Louwers                                                                   Netlab - Schaalbaarheid en Optimalisatie
                                                      pub_openminds.indd 1                                                 11/15/06 10:53:5
Wat moet je testen?
        Hoofdpagina. Altijd!                                     Extremely
                                                                 evolved
                Zelfs als die link niet in de nieuwsbrief gaat staan
                                                                  solutions
               Eerste indruk                                                 Lorem ipsum dolor sit amet, cons
                                                                              ectetuer adipiscing elit. Donec
                                                                              sagittis sagittis urna. Aliquam ipsum.

                                                                              Nunc in leo sed ante lacinia volutpat.




        Meest ingewikkelde pagina
                                                                              Pellentesque urna diam, aliquet
                                                                              non, ullamcorper ut, volutpat lacinia,
                                                                              purus.




               Hopelijk is dat een andere dan de hoofdpagina


        Typische pagina
        Landingspagina, actiepagina enz                                      Zilverenberg 39 - B-9000 Gent - Belgium
                                                                              Tel: +32 9 225 82 91 - Fax: +32 9 224 46 57




Frank Louwers                                                                    Netlab - Schaalbaarheid en Optimalisatie
                                                       pub_openminds.indd 1                                                 11/15/06 10:53:5
Test juist
        In goede omstandigheden                                             Extremely
               test-pc snel genoeg?                                         evolved
                                                                             solutions
               lokaal internet snel genoeg?                                 Lorem ipsum dolor sit amet, cons
                                                                             ectetuer adipiscing elit. Donec
                                                                             sagittis sagittis urna. Aliquam ipsum.

                                                                             Nunc in leo sed ante lacinia volutpat.




        Test met relevante dataset!
                                                                             Pellentesque urna diam, aliquet
                                                                             non, ullamcorper ut, volutpat lacinia,
                                                                             purus.




               Vooral belangrijk voor database problemen
                   Index problemen: exponenti谷el trager
               Als je binnen 3 maand 10000 artikels verwacht
                   Test dan ook met 10000 artikels

                                                                             Zilverenberg 39 - B-9000 Gent - Belgium
                                                                             Tel: +32 9 225 82 91 - Fax: +32 9 224 46 57




Frank Louwers                                                                   Netlab - Schaalbaarheid en Optimalisatie
                                                      pub_openminds.indd 1                                                 11/15/06 10:53:5
Opgepast!
        Je test altijd in development of acceptatie         Extremely
                                                             evolved
                                                             solutions

          Verwittig je hoster voor je gaat testen           Lorem ipsum dolor sit amet, cons
                                                             ectetuer adipiscing elit. Donec
                                                             sagittis sagittis urna. Aliquam ipsum.




           
                                                             Nunc in leo sed ante lacinia volutpat.



             Evil Sysadmin Day!                              Pellentesque urna diam, aliquet
                                                             non, ullamcorper ut, volutpat lacinia,
                                                             purus.




                                                             Zilverenberg 39 - B-9000 Gent - Belgium
                                                             Tel: +32 9 225 82 91 - Fax: +32 9 224 46 57




Frank Louwers                                                   Netlab - Schaalbaarheid en Optimalisatie
                                      pub_openminds.indd 1                                                 11/15/06 10:53:5
Metrics
        Hoeveel requests per seconde bij 1                 Extremely
           gelijktijdige bezoeker                           evolved
                                                            solutions
                                                            Lorem ipsum dolor sit amet, cons
                                                            ectetuer adipiscing elit. Donec
                                                            sagittis sagittis urna. Aliquam ipsum.




        Hoeveel requests per seconde bij veel
                                                            Nunc in leo sed ante lacinia volutpat.

                                                            Pellentesque urna diam, aliquet
                                                            non, ullamcorper ut, volutpat lacinia,
                                                            purus.




           gelijktijdige bezoekers

        In hoeveel tijd laadt de pagina voor 80%
           van de bezoekers
                                                            Zilverenberg 39 - B-9000 Gent - Belgium
                                                            Tel: +32 9 225 82 91 - Fax: +32 9 224 46 57




Frank Louwers                                                  Netlab - Schaalbaarheid en Optimalisatie
                                     pub_openminds.indd 1                                                 11/15/06 10:53:5
Meer resultaten nodig?
          Wil je nog meer weten, vraag uw hoster!
                                                                             Extremely
                                                                             evolved
          Vragen:                                                           solutions
               CPU belasting tijdens testen?                                Lorem ipsum dolor sit amet, cons
                                                                             ectetuer adipiscing elit. Donec
                                                                             sagittis sagittis urna. Aliquam ipsum.




           
                                                                             Nunc in leo sed ante lacinia volutpat.


                Memory gebruik?                                              Pellentesque urna diam, aliquet
                                                                             non, ullamcorper ut, volutpat lacinia,
                                                                             purus.




               Waarom is het traag? Wat is de 鍖essenhals?
                   I/O (meestal)
                   CPU (soms)
                   Netwerk (zelden, tenzij je GarageTV bent)


                                                                             Zilverenberg 39 - B-9000 Gent - Belgium
                                                                             Tel: +32 9 225 82 91 - Fax: +32 9 224 46 57




Frank Louwers                                                                   Netlab - Schaalbaarheid en Optimalisatie
                                                      pub_openminds.indd 1                                                 11/15/06 10:53:5
Wat optimaliseren?
        Dat wat voor vertraging zorgt                  Extremely
                                                          evolved
                                                          solutions

        Kijk naar snelheidswinst in tijd                 Lorem ipsum dolor sit amet, cons
                                                          ectetuer adipiscing elit. Donec
                                                          sagittis sagittis urna. Aliquam ipsum.




          niet in percenten
                                                          Nunc in leo sed ante lacinia volutpat.

                                                          Pellentesque urna diam, aliquet
                                                          non, ullamcorper ut, volutpat lacinia,
                                                          purus.




          niet in aantal function calls
          zelfs niet in aantal database queries
            beter 100 supersnelle queries dan 1
                trage
                                                          Zilverenberg 39 - B-9000 Gent - Belgium
                                                          Tel: +32 9 225 82 91 - Fax: +32 9 224 46 57




Frank Louwers                                                Netlab - Schaalbaarheid en Optimalisatie
                                   pub_openminds.indd 1                                                 11/15/06 10:53:5
Performantiekillers
        Geheugenintensieve operaties                                        Extremely
               Grote 鍖les inlezen?                                          evolved
                                                                             solutions
               24bit tiff aan 600dpi uploaden en converteren                Lorem ipsum dolor sit amet, cons




           
                                                                             ectetuer adipiscing elit. Donec
                                                                             sagittis sagittis urna. Aliquam ipsum.

                thumbnails on the 鍖y aanmaken?                             Nunc in leo sed ante lacinia volutpat.

                                                                             Pellentesque urna diam, aliquet




           
                                                                             non, ullamcorper ut, volutpat lacinia,


                Fotos uit uw database halen en uw applicatie laten serven
                                                                             purus.




        Database intensieve operaties
               slechte indexen / queries
               geen gebruik van DB query cache
               order by RAND() op grote set
                                                                             Zilverenberg 39 - B-9000 Gent - Belgium
                                                                             Tel: +32 9 225 82 91 - Fax: +32 9 224 46 57




Frank Louwers                                                                   Netlab - Schaalbaarheid en Optimalisatie
                                                      pub_openminds.indd 1                                                 11/15/06 10:53:5
Performantiekillers
        CPU intensieve operaties                                            Extremely
               Loops in je code, templates verwerken                        evolved
                                                                             solutions
               Image verwerkingen                                           Lorem ipsum dolor sit amet, cons




           
                                                                             ectetuer adipiscing elit. Donec
                                                                             sagittis sagittis urna. Aliquam ipsum.

                Encryptie (extra md5() op sessies?)                          Nunc in leo sed ante lacinia volutpat.

                                                                             Pellentesque urna diam, aliquet
                                                                             non, ullamcorper ut, volutpat lacinia,
                                                                             purus.




        Externe factoren
               Externe RSS
               Gravatars
               externe css/javascript
               鍖ickr fotos of lokaal?
                                                                             Zilverenberg 39 - B-9000 Gent - Belgium
                                                                             Tel: +32 9 225 82 91 - Fax: +32 9 224 46 57




Frank Louwers                                                                   Netlab - Schaalbaarheid en Optimalisatie
                                                      pub_openminds.indd 1                                                 11/15/06 10:53:5
Tips
        Plan! Meet! Analyseer! Gok niet                                      Extremely
                                                                              evolved
                                                                              solutions

        Cache zoveel mogelijk                                                Lorem ipsum dolor sit amet, cons
                                                                              ectetuer adipiscing elit. Donec
                                                                              sagittis sagittis urna. Aliquam ipsum.

                                                                              Nunc in leo sed ante lacinia volutpat.

                                                                              Pellentesque urna diam, aliquet
                                                                              non, ullamcorper ut, volutpat lacinia,
                                                                              purus.




        Juiste indexen op uw database
        Denk na over URL structuur
               bv upload.uwsite.tld of login.uwsite.tld
               asset hosts en pipelining                                     Zilverenberg 39 - B-9000 Gent - Belgium
                                                                              Tel: +32 9 225 82 91 - Fax: +32 9 224 46 57




Frank Louwers                                                                    Netlab - Schaalbaarheid en Optimalisatie
                                                       pub_openminds.indd 1                                                 11/15/06 10:53:5
Tips
        Cache!                                                                 Extremely

        Bouw met (uw eigen) APIs                                              evolved
                                                                                solutions
               maakt ook schalen van ontwikkeling makkelijker                  Lorem ipsum dolor sit amet, cons
                                                                                ectetuer adipiscing elit. Donec




        Huur experts in
                                                                                sagittis sagittis urna. Aliquam ipsum.

                                                                                Nunc in leo sed ante lacinia volutpat.

                                                                                Pellentesque urna diam, aliquet
                                                                                non, ullamcorper ut, volutpat lacinia,
                                                                                purus.




               om met uw ontwikkelaars te praten
               of te testen
               al is het maar voor 1/2 dag of 2 dagen



        Praat met uw hoster voor de piek                                       Zilverenberg 39 - B-9000 Gent - Belgium
                                                                                Tel: +32 9 225 82 91 - Fax: +32 9 224 46 57




Frank Louwers                                                                      Netlab - Schaalbaarheid en Optimalisatie
                                                         pub_openminds.indd 1                                                 11/15/06 10:53:5
Je hoster wil dit weten ...
                                           Extremely
                                           evolved
                                           solutions
                                           Lorem ipsum dolor sit amet, cons
                                           ectetuer adipiscing elit. Donec
                                           sagittis sagittis urna. Aliquam ipsum.

                                           Nunc in leo sed ante lacinia volutpat.

                                           Pellentesque urna diam, aliquet
                                           non, ullamcorper ut, volutpat lacinia,
                                           purus.




                                           Zilverenberg 39 - B-9000 Gent - Belgium
                                           Tel: +32 9 225 82 91 - Fax: +32 9 224 46 57




Frank Louwers                                 Netlab - Schaalbaarheid en Optimalisatie
                    pub_openminds.indd 1                                                 11/15/06 10:53:5
Waarom?
        Waarom wil je hoster dit weten voor het                              Extremely
           zich voordoet?                                                     evolved
                                                                              solutions
                                                                              Lorem ipsum dolor sit amet, cons
                                                                              ectetuer adipiscing elit. Donec
                                                                              sagittis sagittis urna. Aliquam ipsum.




           
                                                                              Nunc in leo sed ante lacinia volutpat.


                Maximale ROI (beste hardware op juiste moment)                Pellentesque urna diam, aliquet
                                                                              non, ullamcorper ut, volutpat lacinia,
                                                                              purus.




               Stabiele service bieden, aan alle klanten
               Zorgen dat andere sites vlot blijven werken
               s Nachts slapen




                                                                              Zilverenberg 39 - B-9000 Gent - Belgium
                                                                              Tel: +32 9 225 82 91 - Fax: +32 9 224 46 57




Frank Louwers                                                                    Netlab - Schaalbaarheid en Optimalisatie
                                                       pub_openminds.indd 1                                                 11/15/06 10:53:5
Waarom?
        Je hoster is de ideale partner hiervoor                                Extremely
               Heeft toegang tot de fysieke hardware                           evolved
                                                                                solutions
               Kent die hardware het best                                      Lorem ipsum dolor sit amet, cons




           
                                                                                ectetuer adipiscing elit. Donec
                                                                                sagittis sagittis urna. Aliquam ipsum.

                Heeft DBAs in dienst, jij waarschijnlijk niet                  Nunc in leo sed ante lacinia volutpat.

                                                                                Pellentesque urna diam, aliquet




           
                                                                                non, ullamcorper ut, volutpat lacinia,


                Heeft Webserver specialisten in dienst, jij waarschijnlijk niet
                                                                                purus.




               Je bent heus niet de eerste ...




                                                                                Zilverenberg 39 - B-9000 Gent - Belgium
                                                                                Tel: +32 9 225 82 91 - Fax: +32 9 224 46 57




Frank Louwers                                                                      Netlab - Schaalbaarheid en Optimalisatie
                                                         pub_openminds.indd 1                                                 11/15/06 10:53:5
Expert!




          鞄岳岳沿://鍖i界一姻.界看馨/沿鞄看岳看壊/韓界恢/58600311
Het bos en de bomen


               http://鍖ickr.com/photos/mr_fabulous/2033276270
One more thing ...
          Shared Hosting en Rails hosting pakketten:
               tot eind deze maand kortingscode NETLAB Extremely
                                                          evolved
               geeft je 1 maand gratis hosting!                            solutions

       
                                                                            Lorem ipsum dolor sit amet, cons


           Virtual Dedicated Servers:                                       ectetuer adipiscing elit. Donec
                                                                            sagittis sagittis urna. Aliquam ipsum.

                                                                            Nunc in leo sed ante lacinia volutpat.




               vermeld Netlab korting bij je kennismakingsgesprek
                                                                            Pellentesque urna diam, aliquet
                                                                            non, ullamcorper ut, volutpat lacinia,
                                                                            purus.




               en de setup kost valt helemaal weg


          Performantietests van uw applicatie: vanaf 200 eur


          http://www.openminds.be/
          Telefoon: 09 225 82 91                                           Zilverenberg 39 - B-9000 Gent - Belgium
                                                                            Tel: +32 9 225 82 91 - Fax: +32 9 224 46 57




Frank Louwers                                                                  Netlab - Schaalbaarheid en Optimalisatie
                                                     pub_openminds.indd 1                                                 11/15/06 10:53:5
Q &A



http://鍖ickr.com/photos/mbake/399084699/

More Related Content

Schaalbaarheid En Optimalisatie

  • 1. Extremely Help, mijn site wordt populair! evolved solutions Schalen en Optimalisatie Lorem ipsum dolor sit amet, cons ectetuer adipiscing elit. Donec sagittis sagittis urna. Aliquam ipsum. Nunc in leo sed ante lacinia volutpat. Pellentesque urna diam, aliquet non, ullamcorper ut, volutpat lacinia, purus. Frank Louwers Openminds bvba Zilverenberg 39 - B-9000 Gent - Belgium Tel: +32 9 225 82 91 - Fax: +32 9 224 46 57 pub_openminds.indd 1 11/15/06 10:53:57 AM
  • 2. Oh hai! Frank Louwers co-founder & Mr Operations @ Openminds
  • 4. Vanavond Schaalbaarheid Extremely wat evolved solutions hoe Lorem ipsum dolor sit amet, cons ectetuer adipiscing elit. Donec sagittis sagittis urna. Aliquam ipsum. => theoretisch Nunc in leo sed ante lacinia volutpat. Pellentesque urna diam, aliquet non, ullamcorper ut, volutpat lacinia, purus. Pauze Tips voor webbouwers meten is weten eenvoudige technieken met snel resultaat hulp van uw hoster Zilverenberg 39 - B-9000 Gent - Belgium Tel: +32 9 225 82 91 - Fax: +32 9 224 46 57 Frank Louwers Netlab - Schaalbaarheid en Optimalisatie pub_openminds.indd 1 11/15/06 10:53:5
  • 5. Schaalbaarheid en mythes Schaalbaarheid gaat niet over: Extremely evolved technologie Z solutions Lorem ipsum dolor sit amet, cons ruwe performantie en snelheid ectetuer adipiscing elit. Donec sagittis sagittis urna. Aliquam ipsum. Nunc in leo sed ante lacinia volutpat. Pellentesque urna diam, aliquet non, ullamcorper ut, volutpat lacinia, veel enterprise level servers purus. zeker niet over programmeertaal X of Y Zilverenberg 39 - B-9000 Gent - Belgium Tel: +32 9 225 82 91 - Fax: +32 9 224 46 57 Frank Louwers Netlab - Schaalbaarheid en Optimalisatie pub_openminds.indd 1 11/15/06 10:53:5
  • 6. Languages dont scale! 鞄岳岳沿://鍖i界一姻.界看馨/沿鞄看岳看壊/鉛庄逮/122525716
  • 8. Architectures Scale 鞄岳岳沿://鍖i界一姻.界看馨/沿鞄看岳看壊/岳鞄看馨温壊鞄温敬一/44667887/
  • 9. Schaalbaarheid Schaalbaarheid gaat over: Extremely evolved toename aantal bezoekers solutions Lorem ipsum dolor sit amet, cons toename hoeveelheid data ectetuer adipiscing elit. Donec sagittis sagittis urna. Aliquam ipsum. Nunc in leo sed ante lacinia volutpat. Pellentesque urna diam, aliquet non, ullamcorper ut, volutpat lacinia, beheersbaarheid van dit alles purus. Zilverenberg 39 - B-9000 Gent - Belgium Tel: +32 9 225 82 91 - Fax: +32 9 224 46 57 Frank Louwers Netlab - Schaalbaarheid en Optimalisatie pub_openminds.indd 1 11/15/06 10:53:5
  • 10. Schalen: H & V Vertikaal schalen Extremely dikkere doos evolved solutions op zich eenvoudig Lorem ipsum dolor sit amet, cons ectetuer adipiscing elit. Donec sagittis sagittis urna. Aliquam ipsum. prijs: dubbel zo krachtige server kost meer dan dubbel zoveel Nunc in leo sed ante lacinia volutpat. Pellentesque urna diam, aliquet non, ullamcorper ut, volutpat lacinia, maar wat kost software redesignen? purus. biedt GEEN HA (high availability) soms juiste keuze complexe monolitische applicaties databases Zilverenberg 39 - B-9000 Gent - Belgium Tel: +32 9 225 82 91 - Fax: +32 9 224 46 57 Frank Louwers Netlab - Schaalbaarheid en Optimalisatie pub_openminds.indd 1 11/15/06 10:53:5
  • 11. Schalen: H & V Horizontaal schalen Extremely meerdere servers evolved solutions gespecialiseerde servers Lorem ipsum dolor sit amet, cons ectetuer adipiscing elit. Donec sagittis sagittis urna. Aliquam ipsum. database, loadbalancing, maar ook bv speci鍖eke delen Nunc in leo sed ante lacinia volutpat. Pellentesque urna diam, aliquet non, ullamcorper ut, volutpat lacinia, upload / authenticatie / video transcoding purus. vereist soms applicatie aanpassingen (als niet voorzien) maar kan snel (als hoster capaciteit heeft) en tijdelijk (bv voor 2 dagen tot het Digg/Techcrunch effect over is) Zilverenberg 39 - B-9000 Gent - Belgium Tel: +32 9 225 82 91 - Fax: +32 9 224 46 57 Frank Louwers Netlab - Schaalbaarheid en Optimalisatie pub_openminds.indd 1 11/15/06 10:53:5
  • 12. Applicatie servers eenvoudig te schalen als Shared Nothing Extremely schuift probleem down the stack evolved belangrijkste: sessie-data solutions Lorem ipsum dolor sit amet, cons niet elke request op zelfde server ectetuer adipiscing elit. Donec sagittis sagittis urna. Aliquam ipsum. Nunc in leo sed ante lacinia volutpat. lokale sessies: slecht Pellentesque urna diam, aliquet non, ullamcorper ut, volutpat lacinia, purus. bv PHP: standaard naar disk gecentraliseerde sessies: beter centrale databank of speciale cache (memcache) nadeel: sessiestore moet schalen (down the stack) geen sessies: ideaal! Zilverenberg 39 - B-9000 Gent - Belgium Tel: +32 9 225 82 91 - Fax: +32 9 224 46 57 Frank Louwers Netlab - Schaalbaarheid en Optimalisatie pub_openminds.indd 1 11/15/06 10:53:5
  • 13. Vergeet cookie store niet! http://鍖ickr.com/photos/mr-outdoorguy/2100813932/
  • 14. Ah, the stack! 鞄岳岳沿://鍖i界一姻.界看馨/沿鞄看岳看壊/一艶庄岳鞄艶糸糸鉛艶馨温稼/2124245307
  • 15. Queing systemen Wachtrijen vaak onderschat, maar zeer handig Extremely evolved voor alles wat parallelliseerbaar is solutions Lorem ipsum dolor sit amet, cons image conversion, video transcoding, mail uitsturen, ... ectetuer adipiscing elit. Donec sagittis sagittis urna. Aliquam ipsum. Nunc in leo sed ante lacinia volutpat. meestal eenvoudig op te zetten Pellentesque urna diam, aliquet non, ullamcorper ut, volutpat lacinia, purus. je stuurt er iets naar toe, je haalt er iets af helpen bij schalen, maar schalen zelf iets moeilijker ActiveMQ, startling (van Twitter), ... Zilverenberg 39 - B-9000 Gent - Belgium Tel: +32 9 225 82 91 - Fax: +32 9 224 46 57 Frank Louwers Netlab - Schaalbaarheid en Optimalisatie pub_openminds.indd 1 11/15/06 10:53:5
  • 16. Beste I/O Extremely Beste I/O: geen I/O evolved solutions Correctie: geen disk I/O Lorem ipsum dolor sit amet, cons ectetuer adipiscing elit. Donec sagittis sagittis urna. Aliquam ipsum. Disks zijn inherent traag, zelfs snelle disks Nunc in leo sed ante lacinia volutpat. Pellentesque urna diam, aliquet non, ullamcorper ut, volutpat lacinia, purus. Zilverenberg 39 - B-9000 Gent - Belgium Tel: +32 9 225 82 91 - Fax: +32 9 224 46 57 Frank Louwers Netlab - Schaalbaarheid en Optimalisatie pub_openminds.indd 1 11/15/06 10:53:5
  • 17. Databanken Moeilijkste component om te schalen (tenzij je heel veel 鍖les servet) Extremely evolved Te weinig Read performantie? solutions Meeste webapps doen 80/20 of zelfs 90/10 read/write Lorem ipsum dolor sit amet, cons ectetuer adipiscing elit. Donec sagittis sagittis urna. Aliquam ipsum. Nunc in leo sed ante lacinia volutpat. Splits read/writes in uw applicatie en gebruik master-slave Pellentesque urna diam, aliquet non, ullamcorper ut, volutpat lacinia, purus. denormalisatie als het echt niet anders kan Te weinig Write performantie? Lastig horizontaal te schalen! master/master, cluster: zeer complex en lost niet alles op partitioning / sharding Zilverenberg 39 - B-9000 Gent - Belgium Tel: +32 9 225 82 91 - Fax: +32 9 224 46 57 Frank Louwers Netlab - Schaalbaarheid en Optimalisatie pub_openminds.indd 1 11/15/06 10:53:5
  • 18. Help uw databank! Juiste tabelformaat! InnoDB heeft row locking Extremely evolved MyISAM heeft full text indexes solutions Lorem ipsum dolor sit amet, cons Juiste queries en datastructuren ectetuer adipiscing elit. Donec sagittis sagittis urna. Aliquam ipsum. Nunc in leo sed ante lacinia volutpat. niet ... Pellentesque urna diam, aliquet and category like %3 or like %,3,% or like 3,% non, ullamcorper ut, volutpat lacinia, purus. ken uw joins GEEN order by rand() Juiste Indexen vooral bij veel data, veel verschil! stijgt exponentieel met hoeveelheid data EXPLAIN is uw vriend! Zilverenberg 39 - B-9000 Gent - Belgium Tel: +32 9 225 82 91 - Fax: +32 9 224 46 57 Frank Louwers Netlab - Schaalbaarheid en Optimalisatie pub_openminds.indd 1 11/15/06 10:53:5
  • 19. Caching Caching zorgt dat je niet moet schalen Extremely of toch zo snel niet evolved solutions of maakt het goedkoper Lorem ipsum dolor sit amet, cons ectetuer adipiscing elit. Donec sagittis sagittis urna. Aliquam ipsum. Nunc in leo sed ante lacinia volutpat. Pellentesque urna diam, aliquet non, ullamcorper ut, volutpat lacinia, purus. Algemene strategie: cache alles wat je kan! Cache op alle lagen Zilverenberg 39 - B-9000 Gent - Belgium Tel: +32 9 225 82 91 - Fax: +32 9 224 46 57 Frank Louwers Netlab - Schaalbaarheid en Optimalisatie pub_openminds.indd 1 11/15/06 10:53:5
  • 20. Caching op alle lagen Templates naar applicatie-code bv Smarty templates naar PHP Extremely evolved Output naar HTML solutions Lorem ipsum dolor sit amet, cons hoeveel echt dynamische blokken zitten er op een page? ectetuer adipiscing elit. Donec sagittis sagittis urna. Aliquam ipsum. Nunc in leo sed ante lacinia volutpat. meestal niet zo moeilijk (PHP: ob_ functies) Pellentesque urna diam, aliquet non, ullamcorper ut, volutpat lacinia, purus. nadenken over invalidatie Object en result caching bv lijst van alle categori谷n van een shop, lijst 10 populairste memcache! (snel, eenvoudig, schaalt goed) externe API calls Zilverenberg 39 - B-9000 Gent - Belgium Tel: +32 9 225 82 91 - Fax: +32 9 224 46 57 Frank Louwers Netlab - Schaalbaarheid en Optimalisatie pub_openminds.indd 1 11/15/06 10:53:5
  • 21. Caches: bestaande Gebruik bestaande caching systemen! Extremely Browser cache (juiste parameters doorgeven) evolved solutions Database cache (MySQL Query cache) Lorem ipsum dolor sit amet, cons ectetuer adipiscing elit. Donec sagittis sagittis urna. Aliquam ipsum. Nunc in leo sed ante lacinia volutpat. Query cache moest correct ingesteld staan Pellentesque urna diam, aliquet non, ullamcorper ut, volutpat lacinia, purus. Opgelet met prepared statements Zilverenberg 39 - B-9000 Gent - Belgium Tel: +32 9 225 82 91 - Fax: +32 9 224 46 57 Frank Louwers Netlab - Schaalbaarheid en Optimalisatie pub_openminds.indd 1 11/15/06 10:53:5
  • 22. Files serven Files serven is eenvoudig voor een webserver. Extremely Is bovendien stateless, dus eenvoudig te loadbalancen evolved Nadenken over: solutions Lorem ipsum dolor sit amet, cons 鍖les in sync houden? ectetuer adipiscing elit. Donec sagittis sagittis urna. Aliquam ipsum. Nunc in leo sed ante lacinia volutpat. versies van 鍖les? Pellentesque urna diam, aliquet non, ullamcorper ut, volutpat lacinia, purus. Zorg dat alle 鍖les rechtstreeks geservet worden, buiten uw applicatie om Zeker niet uit een database! Zelfs voor private images tijdelijke urls? cookie based regels? Zilverenberg 39 - B-9000 Gent - Belgium Tel: +32 9 225 82 91 - Fax: +32 9 224 46 57 Frank Louwers Netlab - Schaalbaarheid en Optimalisatie pub_openminds.indd 1 11/15/06 10:53:5
  • 23. Files opslaan In het begin eenvoudig: diskspace tot Extremely ongeveer 2TB per server evolved solutions tot op limiet waar niet meer kan Lorem ipsum dolor sit amet, cons ectetuer adipiscing elit. Donec sagittis sagittis urna. Aliquam ipsum. Nunc in leo sed ante lacinia volutpat. of tot limiet waar disks te traag worden Pellentesque urna diam, aliquet non, ullamcorper ut, volutpat lacinia, purus. SAN = duur, maar noodzakelijk zelfs bij weinig data: opletten voor limieten 鍖lesystemen worden traag bij 10000 鍖les meerdere directories, hashing Zilverenberg 39 - B-9000 Gent - Belgium Tel: +32 9 225 82 91 - Fax: +32 9 224 46 57 Frank Louwers Netlab - Schaalbaarheid en Optimalisatie pub_openminds.indd 1 11/15/06 10:53:5
  • 24. HA (High Availability) Vermijden van SPOFs - Single Point of Failure identi鍖ceren en elimineren Extremely evolved sommige zeer lastig! solutions Lorem ipsum dolor sit amet, cons database master ectetuer adipiscing elit. Donec sagittis sagittis urna. Aliquam ipsum. Nunc in leo sed ante lacinia volutpat. datacenter? Pellentesque urna diam, aliquet non, ullamcorper ut, volutpat lacinia, purus. meerdere datacenters lost problemen op maar introduceert nieuwe (bv latency en replication) Zilverenberg 39 - B-9000 Gent - Belgium Tel: +32 9 225 82 91 - Fax: +32 9 224 46 57 Frank Louwers Netlab - Schaalbaarheid en Optimalisatie pub_openminds.indd 1 11/15/06 10:53:5
  • 25. Pauze! 鞄岳岳沿://鍖i界一姻.界看馨/沿鞄看岳看壊/恢顎恢恢鉛艶敬姻温沿76/2895595130
  • 26. Meten is weten Vragen beantwoorden als: Extremely Hoe snel is mijn applicatie of site eigenlijk? evolved solutions Hoeveel hits kan ik aan? Lorem ipsum dolor sit amet, cons ectetuer adipiscing elit. Donec sagittis sagittis urna. Aliquam ipsum. Als ik morgen in de Humo sta, lukt dat? Nunc in leo sed ante lacinia volutpat. Pellentesque urna diam, aliquet non, ullamcorper ut, volutpat lacinia, Als ik straks vermeld wordt op Studio Brussel, kan ik dat aan? purus. Wat als ik een nieuwsbrief stuur naar mijn 25000 klanten? Experts inhuren? Kan ik dit zelf? Zilverenberg 39 - B-9000 Gent - Belgium Tel: +32 9 225 82 91 - Fax: +32 9 224 46 57 Frank Louwers Netlab - Schaalbaarheid en Optimalisatie pub_openminds.indd 1 11/15/06 10:53:5
  • 27. Meten kan je zelf Eenvoudige tests, eenvoudige tools: Extremely evolved ab (uit de Apache toolkit: http://httpd.apache.org/) solutions httperf (http://www.hpl.hp.com/research/linux/httperf/) Lorem ipsum dolor sit amet, cons testen 1 hit op 1 pagina ectetuer adipiscing elit. Donec sagittis sagittis urna. Aliquam ipsum. Nunc in leo sed ante lacinia volutpat. Pellentesque urna diam, aliquet non, ullamcorper ut, volutpat lacinia, purus. zonder css, js, ajax, images, enz vaak meer dan genoeg om een antwoord te krijgen Complexere tools jmeter log replay tools kunnen een sessie simuleren, traject volgen Zilverenberg 39 - B-9000 Gent - Belgium Tel: +32 9 225 82 91 - Fax: +32 9 224 46 57 Frank Louwers Netlab - Schaalbaarheid en Optimalisatie pub_openminds.indd 1 11/15/06 10:53:5
  • 28. Wat moet je testen? Hoofdpagina. Altijd! Extremely evolved Zelfs als die link niet in de nieuwsbrief gaat staan solutions Eerste indruk Lorem ipsum dolor sit amet, cons ectetuer adipiscing elit. Donec sagittis sagittis urna. Aliquam ipsum. Nunc in leo sed ante lacinia volutpat. Meest ingewikkelde pagina Pellentesque urna diam, aliquet non, ullamcorper ut, volutpat lacinia, purus. Hopelijk is dat een andere dan de hoofdpagina Typische pagina Landingspagina, actiepagina enz Zilverenberg 39 - B-9000 Gent - Belgium Tel: +32 9 225 82 91 - Fax: +32 9 224 46 57 Frank Louwers Netlab - Schaalbaarheid en Optimalisatie pub_openminds.indd 1 11/15/06 10:53:5
  • 29. Test juist In goede omstandigheden Extremely test-pc snel genoeg? evolved solutions lokaal internet snel genoeg? Lorem ipsum dolor sit amet, cons ectetuer adipiscing elit. Donec sagittis sagittis urna. Aliquam ipsum. Nunc in leo sed ante lacinia volutpat. Test met relevante dataset! Pellentesque urna diam, aliquet non, ullamcorper ut, volutpat lacinia, purus. Vooral belangrijk voor database problemen Index problemen: exponenti谷el trager Als je binnen 3 maand 10000 artikels verwacht Test dan ook met 10000 artikels Zilverenberg 39 - B-9000 Gent - Belgium Tel: +32 9 225 82 91 - Fax: +32 9 224 46 57 Frank Louwers Netlab - Schaalbaarheid en Optimalisatie pub_openminds.indd 1 11/15/06 10:53:5
  • 30. Opgepast! Je test altijd in development of acceptatie Extremely evolved solutions Verwittig je hoster voor je gaat testen Lorem ipsum dolor sit amet, cons ectetuer adipiscing elit. Donec sagittis sagittis urna. Aliquam ipsum. Nunc in leo sed ante lacinia volutpat. Evil Sysadmin Day! Pellentesque urna diam, aliquet non, ullamcorper ut, volutpat lacinia, purus. Zilverenberg 39 - B-9000 Gent - Belgium Tel: +32 9 225 82 91 - Fax: +32 9 224 46 57 Frank Louwers Netlab - Schaalbaarheid en Optimalisatie pub_openminds.indd 1 11/15/06 10:53:5
  • 31. Metrics Hoeveel requests per seconde bij 1 Extremely gelijktijdige bezoeker evolved solutions Lorem ipsum dolor sit amet, cons ectetuer adipiscing elit. Donec sagittis sagittis urna. Aliquam ipsum. Hoeveel requests per seconde bij veel Nunc in leo sed ante lacinia volutpat. Pellentesque urna diam, aliquet non, ullamcorper ut, volutpat lacinia, purus. gelijktijdige bezoekers In hoeveel tijd laadt de pagina voor 80% van de bezoekers Zilverenberg 39 - B-9000 Gent - Belgium Tel: +32 9 225 82 91 - Fax: +32 9 224 46 57 Frank Louwers Netlab - Schaalbaarheid en Optimalisatie pub_openminds.indd 1 11/15/06 10:53:5
  • 32. Meer resultaten nodig? Wil je nog meer weten, vraag uw hoster! Extremely evolved Vragen: solutions CPU belasting tijdens testen? Lorem ipsum dolor sit amet, cons ectetuer adipiscing elit. Donec sagittis sagittis urna. Aliquam ipsum. Nunc in leo sed ante lacinia volutpat. Memory gebruik? Pellentesque urna diam, aliquet non, ullamcorper ut, volutpat lacinia, purus. Waarom is het traag? Wat is de 鍖essenhals? I/O (meestal) CPU (soms) Netwerk (zelden, tenzij je GarageTV bent) Zilverenberg 39 - B-9000 Gent - Belgium Tel: +32 9 225 82 91 - Fax: +32 9 224 46 57 Frank Louwers Netlab - Schaalbaarheid en Optimalisatie pub_openminds.indd 1 11/15/06 10:53:5
  • 33. Wat optimaliseren? Dat wat voor vertraging zorgt Extremely evolved solutions Kijk naar snelheidswinst in tijd Lorem ipsum dolor sit amet, cons ectetuer adipiscing elit. Donec sagittis sagittis urna. Aliquam ipsum. niet in percenten Nunc in leo sed ante lacinia volutpat. Pellentesque urna diam, aliquet non, ullamcorper ut, volutpat lacinia, purus. niet in aantal function calls zelfs niet in aantal database queries beter 100 supersnelle queries dan 1 trage Zilverenberg 39 - B-9000 Gent - Belgium Tel: +32 9 225 82 91 - Fax: +32 9 224 46 57 Frank Louwers Netlab - Schaalbaarheid en Optimalisatie pub_openminds.indd 1 11/15/06 10:53:5
  • 34. Performantiekillers Geheugenintensieve operaties Extremely Grote 鍖les inlezen? evolved solutions 24bit tiff aan 600dpi uploaden en converteren Lorem ipsum dolor sit amet, cons ectetuer adipiscing elit. Donec sagittis sagittis urna. Aliquam ipsum. thumbnails on the 鍖y aanmaken? Nunc in leo sed ante lacinia volutpat. Pellentesque urna diam, aliquet non, ullamcorper ut, volutpat lacinia, Fotos uit uw database halen en uw applicatie laten serven purus. Database intensieve operaties slechte indexen / queries geen gebruik van DB query cache order by RAND() op grote set Zilverenberg 39 - B-9000 Gent - Belgium Tel: +32 9 225 82 91 - Fax: +32 9 224 46 57 Frank Louwers Netlab - Schaalbaarheid en Optimalisatie pub_openminds.indd 1 11/15/06 10:53:5
  • 35. Performantiekillers CPU intensieve operaties Extremely Loops in je code, templates verwerken evolved solutions Image verwerkingen Lorem ipsum dolor sit amet, cons ectetuer adipiscing elit. Donec sagittis sagittis urna. Aliquam ipsum. Encryptie (extra md5() op sessies?) Nunc in leo sed ante lacinia volutpat. Pellentesque urna diam, aliquet non, ullamcorper ut, volutpat lacinia, purus. Externe factoren Externe RSS Gravatars externe css/javascript 鍖ickr fotos of lokaal? Zilverenberg 39 - B-9000 Gent - Belgium Tel: +32 9 225 82 91 - Fax: +32 9 224 46 57 Frank Louwers Netlab - Schaalbaarheid en Optimalisatie pub_openminds.indd 1 11/15/06 10:53:5
  • 36. Tips Plan! Meet! Analyseer! Gok niet Extremely evolved solutions Cache zoveel mogelijk Lorem ipsum dolor sit amet, cons ectetuer adipiscing elit. Donec sagittis sagittis urna. Aliquam ipsum. Nunc in leo sed ante lacinia volutpat. Pellentesque urna diam, aliquet non, ullamcorper ut, volutpat lacinia, purus. Juiste indexen op uw database Denk na over URL structuur bv upload.uwsite.tld of login.uwsite.tld asset hosts en pipelining Zilverenberg 39 - B-9000 Gent - Belgium Tel: +32 9 225 82 91 - Fax: +32 9 224 46 57 Frank Louwers Netlab - Schaalbaarheid en Optimalisatie pub_openminds.indd 1 11/15/06 10:53:5
  • 37. Tips Cache! Extremely Bouw met (uw eigen) APIs evolved solutions maakt ook schalen van ontwikkeling makkelijker Lorem ipsum dolor sit amet, cons ectetuer adipiscing elit. Donec Huur experts in sagittis sagittis urna. Aliquam ipsum. Nunc in leo sed ante lacinia volutpat. Pellentesque urna diam, aliquet non, ullamcorper ut, volutpat lacinia, purus. om met uw ontwikkelaars te praten of te testen al is het maar voor 1/2 dag of 2 dagen Praat met uw hoster voor de piek Zilverenberg 39 - B-9000 Gent - Belgium Tel: +32 9 225 82 91 - Fax: +32 9 224 46 57 Frank Louwers Netlab - Schaalbaarheid en Optimalisatie pub_openminds.indd 1 11/15/06 10:53:5
  • 38. Je hoster wil dit weten ... Extremely evolved solutions Lorem ipsum dolor sit amet, cons ectetuer adipiscing elit. Donec sagittis sagittis urna. Aliquam ipsum. Nunc in leo sed ante lacinia volutpat. Pellentesque urna diam, aliquet non, ullamcorper ut, volutpat lacinia, purus. Zilverenberg 39 - B-9000 Gent - Belgium Tel: +32 9 225 82 91 - Fax: +32 9 224 46 57 Frank Louwers Netlab - Schaalbaarheid en Optimalisatie pub_openminds.indd 1 11/15/06 10:53:5
  • 39. Waarom? Waarom wil je hoster dit weten voor het Extremely zich voordoet? evolved solutions Lorem ipsum dolor sit amet, cons ectetuer adipiscing elit. Donec sagittis sagittis urna. Aliquam ipsum. Nunc in leo sed ante lacinia volutpat. Maximale ROI (beste hardware op juiste moment) Pellentesque urna diam, aliquet non, ullamcorper ut, volutpat lacinia, purus. Stabiele service bieden, aan alle klanten Zorgen dat andere sites vlot blijven werken s Nachts slapen Zilverenberg 39 - B-9000 Gent - Belgium Tel: +32 9 225 82 91 - Fax: +32 9 224 46 57 Frank Louwers Netlab - Schaalbaarheid en Optimalisatie pub_openminds.indd 1 11/15/06 10:53:5
  • 40. Waarom? Je hoster is de ideale partner hiervoor Extremely Heeft toegang tot de fysieke hardware evolved solutions Kent die hardware het best Lorem ipsum dolor sit amet, cons ectetuer adipiscing elit. Donec sagittis sagittis urna. Aliquam ipsum. Heeft DBAs in dienst, jij waarschijnlijk niet Nunc in leo sed ante lacinia volutpat. Pellentesque urna diam, aliquet non, ullamcorper ut, volutpat lacinia, Heeft Webserver specialisten in dienst, jij waarschijnlijk niet purus. Je bent heus niet de eerste ... Zilverenberg 39 - B-9000 Gent - Belgium Tel: +32 9 225 82 91 - Fax: +32 9 224 46 57 Frank Louwers Netlab - Schaalbaarheid en Optimalisatie pub_openminds.indd 1 11/15/06 10:53:5
  • 41. Expert! 鞄岳岳沿://鍖i界一姻.界看馨/沿鞄看岳看壊/韓界恢/58600311
  • 42. Het bos en de bomen http://鍖ickr.com/photos/mr_fabulous/2033276270
  • 43. One more thing ... Shared Hosting en Rails hosting pakketten: tot eind deze maand kortingscode NETLAB Extremely evolved geeft je 1 maand gratis hosting! solutions Lorem ipsum dolor sit amet, cons Virtual Dedicated Servers: ectetuer adipiscing elit. Donec sagittis sagittis urna. Aliquam ipsum. Nunc in leo sed ante lacinia volutpat. vermeld Netlab korting bij je kennismakingsgesprek Pellentesque urna diam, aliquet non, ullamcorper ut, volutpat lacinia, purus. en de setup kost valt helemaal weg Performantietests van uw applicatie: vanaf 200 eur http://www.openminds.be/ Telefoon: 09 225 82 91 Zilverenberg 39 - B-9000 Gent - Belgium Tel: +32 9 225 82 91 - Fax: +32 9 224 46 57 Frank Louwers Netlab - Schaalbaarheid en Optimalisatie pub_openminds.indd 1 11/15/06 10:53:5