Your SlideShare is downloading. ×
0
SQUID
och andra cachelösningar
Henrik Nordström
henrik@henriknordstrom.net
Konsult Open Source, Squid, Linux & Nätverk
sedan 1995




2010-05-31     Henr...
Var finns cache?

Webbläsare
●Snabbare sidvisning



Normal proxy cache, användare -> Internet
●internet åtkomstkontroll

...
Fördelar?

●Kapa trafiktoppar & stormar
●Minska samtidiga förfrågningar/sessioner
●Keep-alive avlastning
●Lastbalansering,...
Trafiktoppar

                                                                                      Trafiktopp
           ...
Samtidiga
             sessioner

Buffert
●Sköter leverans till klient

●Webbserver fri för nästa fråga



HTTP Keep-Alive...
Samtidiga
             sessioner

Buffert
●Sköter leverans till klient

●Webbserver fri för nästa fråga



HTTP Keep-Alive...
Lastbalansering




Router på HTTP nivå
Balanserar serverlast
Felaktiga servrar avaktiveras
Virtuell server, välj server e...
Geografisk
             distribution



Enkel geografisk distribution
Inga speglingskrav
Lokal prestanda utan lokal data

...
Drift &
             Prestanda

Failover om ingen webbserver tillgänglig
- meddelande
- äldre cachad kopia

Enkel uppskaln...
Vad krävs?

●Medvetenhet om cache i designarbete
●Vad är acceptabel uppdateringsfördöjning?
●Använd GET, undvik POST
●”sta...
Hur?


Avänd Cache-Control korrekt. mod_expires mm.


Sedan med avancerade alternativ:
Last-Modified + If-Modified-Since
E...
ETag?



Unik identifierare innehållsversion
Per URL
If-None-Match -> Duger någon av dessa?
Gzip -> annan Etag
Starka & Sv...
Fallgropar!


●Slump-parametrar i querystring
●Sessionsberoende HTML
●Använd DOM + javascript istället
●Oväntad cachning
●...
Fördelar!
               - Ännu fler!!


●Virtuell server, samma hostnamn, data från flera olika
servrar
●ICAP, lägg på ex...
Proxyservrar


●Squid
●Varnish
●nginx
●Apache httpd
●Apache TrafficServer ( Yahoo(Inktomi) -> Apache)
●   ...med flera


2...
SQUID -
             Vad betyder det?




a) Super Quick Universal Index Daemon


b) Namnet på en familj bläckfiskar


c) ...
SQUID -
             Vad är det?


               Squid HTTP Proxy är:
                 HTTP proxy/cache.
   Open Source. ...
Upcoming SlideShare
Loading in...5
×

OPTIMERA STHLM! Henrik Nordström

1,101

Published on

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
1,101
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
6
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Transcript of "OPTIMERA STHLM! Henrik Nordström"

  1. 1. SQUID och andra cachelösningar
  2. 2. Henrik Nordström henrik@henriknordstrom.net Konsult Open Source, Squid, Linux & Nätverk sedan 1995 2010-05-31 Henrik Nordström, henrik@henriknordstrom.net | OPTIMERA STHLM! |
  3. 3. Var finns cache? Webbläsare ●Snabbare sidvisning Normal proxy cache, användare -> Internet ●internet åtkomstkontroll ●avlastning av internet förbindelse ●virusscanning mm. Omvänd/reverse proxy cache, Internet -> Webbserver ●Framför webbserver ●Avlasning av webbserver ●Lastbalansering / routning på nivå 7 2010-05-31 Henrik Nordström, henrik@henriknordstrom.net | OPTIMERA STHLM! |
  4. 4. Fördelar? ●Kapa trafiktoppar & stormar ●Minska samtidiga förfrågningar/sessioner ●Keep-alive avlastning ●Lastbalansering, nivå 7 ●Geografisk distribution ●Förbättrad drift ●Skala upp kapacitet 2010-05-31 Henrik Nordström, henrik@henriknordstrom.net | OPTIMERA STHLM! |
  5. 5. Trafiktoppar Trafiktopp Med cache 250 Vad händer vid en trafiktopp? 200 * Unika frågor mot webbsever 150 * Cache tar återkommande frågor Frågor 100 * Märks knappt 50 0 01 02 03 04 05 06 07 08 09 Tid Trafik Webserver 2010-05-31 Henrik Nordström, henrik@henriknordstrom.net | OPTIMERA STHLM! |
  6. 6. Samtidiga sessioner Buffert ●Sköter leverans till klient ●Webbserver fri för nästa fråga HTTP Keep-Alive ●Separerar klient & server ●Klient keep-alive tar inga server resurser Samtidiga frågor ●Slås ihop till en 2010-05-31 Henrik Nordström, henrik@henriknordstrom.net | OPTIMERA STHLM! |
  7. 7. Samtidiga sessioner Buffert ●Sköter leverans till klient ●Webbserver fri för nästa fråga HTTP Keep-Alive ●Separerar klient & server ●Klient keep-alive tar inga server resurser Samtidiga frågor ●Slås ihop till en 2010-05-31 Henrik Nordström, henrik@henriknordstrom.net | OPTIMERA STHLM! |
  8. 8. Lastbalansering Router på HTTP nivå Balanserar serverlast Felaktiga servrar avaktiveras Virtuell server, välj server efter innehåll 2010-05-31 Henrik Nordström, henrik@henriknordstrom.net | OPTIMERA STHLM! |
  9. 9. Geografisk distribution Enkel geografisk distribution Inga speglingskrav Lokal prestanda utan lokal data 2010-05-31 Henrik Nordström, henrik@henriknordstrom.net | OPTIMERA STHLM! |
  10. 10. Drift & Prestanda Failover om ingen webbserver tillgänglig - meddelande - äldre cachad kopia Enkel uppskalning av prestanda - Automatisk - Inga speglingskrav 2010-05-31 Henrik Nordström, henrik@henriknordstrom.net | OPTIMERA STHLM! |
  11. 11. Vad krävs? ●Medvetenhet om cache i designarbete ●Vad är acceptabel uppdateringsfördöjning? ●Använd GET, undvik POST ●”statiskt” innehåll ●En URL -> ett innehåll ●Märk upp ej cachningsbart ●Stödja cache validering, If-Modified-Since, Etag, If-None-Match 2010-05-31 Henrik Nordström, henrik@henriknordstrom.net | OPTIMERA STHLM! |
  12. 12. Hur? Avänd Cache-Control korrekt. mod_expires mm. Sedan med avancerade alternativ: Last-Modified + If-Modified-Since ETag + If-None-Match 2010-05-31 Henrik Nordström, henrik@henriknordstrom.net | OPTIMERA STHLM! |
  13. 13. ETag? Unik identifierare innehållsversion Per URL If-None-Match -> Duger någon av dessa? Gzip -> annan Etag Starka & Svaga, Range 2010-05-31 Henrik Nordström, henrik@henriknordstrom.net | OPTIMERA STHLM! |
  14. 14. Fallgropar! ●Slump-parametrar i querystring ●Sessionsberoende HTML ●Använd DOM + javascript istället ●Oväntad cachning ●Fel i ETag ●Fel i Vary 2010-05-31 Henrik Nordström, henrik@henriknordstrom.net | OPTIMERA STHLM! |
  15. 15. Fördelar! - Ännu fler!! ●Virtuell server, samma hostnamn, data från flera olika servrar ●ICAP, lägg på extra behandlingslager på befintliga applikationer/servrar ●ESI (Edge Side Includes), Låt proxyservern göra del av sidkomoneringen. Alternativ till att använda DOM. ●Backupsida vid serverproblem 2010-05-31 Henrik Nordström, henrik@henriknordstrom.net | OPTIMERA STHLM! |
  16. 16. Proxyservrar ●Squid ●Varnish ●nginx ●Apache httpd ●Apache TrafficServer ( Yahoo(Inktomi) -> Apache) ● ...med flera 2010-05-31 Henrik Nordström, henrik@henriknordstrom.net | OPTIMERA STHLM! |
  17. 17. SQUID - Vad betyder det? a) Super Quick Universal Index Daemon b) Namnet på en familj bläckfiskar c) Tillfälliga arbetsnamnet som blev kvar 2010-05-31 Henrik Nordström, henrik@henriknordstrom.net | OPTIMERA STHLM! |
  18. 18. SQUID - Vad är det? Squid HTTP Proxy är: HTTP proxy/cache. Open Source. Användardriven utveckling. Välkänd & breprövad. 1996 Förbättras kontinuerligt. Någon som vill hjälpa till? 2010-05-31 Henrik Nordström, henrik@henriknordstrom.net | OPTIMERA STHLM! |
  1. A particular slide catching your eye?

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

×