Sist oppdatert: februar 2013
I løpet av det siste året har jeg administrert et nettsted som har gått fra å konsumere 500 GB data per måned til 100 TB data per måned. Her er progresjonen til CDN-er som jeg gikk gjennom, og tankene mine om hver. Dette er på ingen måte en omfattende guide til hvert CDN-nettverk der ute, men jeg lærte mye med tiden min på hvert.
Cloudfront
La meg bare begynne med å si, jeg ville ikke under noen omstendigheter bruke Cloudfront som mitt CDN med mindre du vil spyle penger på toalettet.
Det var her vi startet, det er Amazon Web Services, jeg var allerede godt kjent med tjenestene deres. Vi trengte 500 GB per måned, så ingenting er så sprøtt. På dette tidspunktet hadde vi nettopp begynt å implementere en CDN for å tjene de store bildefilene våre som allerede var lastet opp til S3. 12 cent per GB virket ikke så dyrt den gang, men det var også en ekstra kostnad per 10 000 forespørsler. Igjen, mengden av forespørsler var ubetydelig den gang, så jeg tror de totale kostnadene var under $ 100 per måned, noe som var helt greit.
Vi begynte å finne på andre ting som gjorde Cloudfront frustrerende. Det er ingen måte å ugyldige elementer gjennom det elektroniske AWS-grensesnittet. Du må bruke kommandolinjeverktøyene deres eller skrive et skript for å tømme en bestemt fil fra cachen. Ikke så stor avtale, men det er fint å kunne logge seg direkte på leverandøren din for å gjøre det. Jeg måtte uansett skrive et skript for å tømme noen få filer i en cronjob, så lett nok til å rigge opp et lite grensesnitt for å tømme brukerspesifiserte elementer også. Rapporteringen er heller ikke bra, det er bare ikke det de fokuserte på.
Så begynte vi å vokse. Vi flyttet først alle våre mindre statiske filer som våre CSS- og javascript-filer. Snart flyttet vi til og med de faktiske HTML-filene våre som ble speilet gjennom Cloudfront (dette er ikke ideelt å gjøre, men det er en diskusjon for en annen dag). 500 GB til 5 TB til 10 til 50. Du gjør regnestykket, som legger opp raskt. Ikke bare fikk vi 12 øre for de første 10 TB, deretter 8 øre for de neste 40, men vi satte også opp en stor regning i antall forespørsler. Det kom til et punkt hvor vår effektive rate per GB var nesten 18 øre. Det er ingen forhandlinger med Amazon for mindre forleggere (i det minste tror jeg ikke det), og selv om det var det, var prisene deres så langt utenfor base at jeg ikke engang hadde plaget det. Jeg elsker alt om AWS for de fleste av prosjektene mine, men å bruke Cloudfront til å distribuere filer er ikke en av dem.
MaxCDN / NetDNA
La meg si først at jeg elsket MaxCDN. Deres backend-grensesnitt er en glede å bruke. De har flotte grafikk på omtrent hver beregning du kan ønske deg. Det er enkelt som kake å ugyldiggjøre et element i hurtigbufferen. Rett etter at vi startet forholdet, flyttet vi til NetDNA, som jeg tror paraplyen der de plasserte sine større kunder og prøver å få deg innelåst i en langsiktig kontrakt. Uansett er det nøyaktig de samme nettstedene så langt jeg kan fortelle. Jeg tror den endelige forhandlingsraten vår var på rundt 5-6 cent per GB, selv om jeg ikke holder meg nøyaktig på det.
Dette bringer meg til det viktigste elementet om CDN-priser, bør du forhandle. Tilsynelatende er CDN-verdenen veldig halsende, og de er veldig enkle å spille frem og tilbake av hverandre. Det minnet meg faktisk om forrige gang jeg fikk et pantelån, etter at kontoeiere hadde bedt om å se den andres kontrakt og slikt. Da jeg først fikk pristilbud fra MaxCDN / NetDNA, kunne jeg forhandle om en pris uten fordel av en annen konkurrent som ba mot. Jeg fikk bare et bedre tilbud fordi jeg prøver å aldri betale full pris om mulig. MaxCDN kjører utmerkede kampanjetilbud hele tiden uansett for både nye og eksisterende kunder.
Til slutt viste det seg å være noen begrensninger rundt hurtigbufring av faktisk innhold som fikk en viss del av søknaden til å mislykkes, noe som var en forhandler for oss. Jeg kommer ikke inn på detaljer, men de får tommelen opp fra meg både for service, brukergrensesnitt og pris. Det ville fungert i 99% av brukssakene mine, bare ikke for denne spesifikke forekomsten.
Edgecast
Edgecast er et veldig stort selskap, har et veldig godt nettverk og veldig konkurransedyktige priser. Systemet deres var i stand til å håndtere problemet vi kjørte inn med NetDNA, så vi forhandlet frem en avtale og signerte den. Prisene deres var ikke så bra som NetDNA, men deres backend gir mye fleksibilitet. Det er en backend som definitivt ble bygget av utviklere for utviklere. UI overlater en whoooooooole mye å være ønsket, men du kan gjøre hva du kan forestille deg fra et cache-synspunkt. Med NetDNA ville jeg føle meg komfortabel med å logge inn en ikke-teknisk person for å tømme hurtigbufferen på en fil, med Edgecast ville jeg ikke føle meg så trygg å ha gjort det.
De prøver å nikkel og krone bare litt med noen tilleggsfunksjoner i motsetning til å ha alt innebygd i prisen. Jeg kan ikke huske hva alle nøyaktig, men for eksempel sanntidsrapportering. Igjen, det er denne vi bruker for øyeblikket, og de har utmerkede priser og utmerket fleksibilitet fra et utviklingsperspektiv. Hvis du kunne lage mitt perfekte CDN, ville det være prisen og brukergrensesnittet til NetDNA med fleksibiliteten til Edgecast-administrasjonen
Roundup
Jeg har ikke tenkt å komme inn på hurtigsammenligninger. Jeg gjorde en liten hastighetstesting, og hastigheten i alle tilfeller kom til en nesten ubetydelig forskjell. Alle tre var veldig raske og syntes etter alt å dømme å ha veldig robuste nettverk.
Det er to ting du burde ha fått ut av dette:
- Ikke bruk Cloudfront
- Forhandle pris
- Jeg foretrekker MaxCDN / NetDNA, men det kommer virkelig til dine behov
Og ja, det er selvfølgelig mange andre CDN-nettverk, men dette handler ikke om dem.