Mijn CDN-voortgang

Voor het laatst bijgewerkt: februari 2013

In het afgelopen jaar heb ik een site beheerd die 500 GB aan gegevens per maand heeft verloren aan 100 TB aan gegevens per maand. Hier is de voortgang van CDN's die ik heb doorgemaakt en mijn gedachten over elk. Dit is geenszins een uitgebreide gids voor elk CDN-netwerk, maar ik heb veel geleerd met mijn tijd bij elk.

Cloudfront

Laat me dit beginnen door te zeggen dat ik Cloudfront onder geen beding als mijn CDN zou gebruiken, tenzij je geld door het toilet wilt spoelen.

Hier zijn we begonnen, het is Amazon Web Services, ik was al heel bekend met hun diensten. We hadden 500 GB per maand nodig, dus niets te gek. Op dit punt waren we net begonnen met het implementeren van een CDN om onze grote beeldbestanden te dienen die al waren geüpload naar S3. 12 cent per GB leek toen nog niet zo duur, maar er was ook een toeslag per 10.000 verzoeken. Nogmaals, het aantal verzoeken was destijds te verwaarlozen, dus ik geloof dat onze totale kosten minder dan $ 100 / maand waren, wat helemaal goed was.

We begonnen tegen andere items aan te lopen die het gebruik van Cloudfront frustrerend maakten. Er is geen manier om items ongeldig te maken via de online AWS-interface. U moet hun opdrachtregelprogramma's gebruiken of een script schrijven om een ​​specifiek bestand uit de cache te wissen. Niet zo'n grote deal, maar het is fijn om direct in te loggen bij je provider om dit te doen. Ik moest toch een script schrijven om een ​​paar bestanden in een cronjob te wissen, zo gemakkelijk genoeg om een ​​kleine interface op te zetten om door de gebruiker gespecificeerde items ook te wissen. De rapportage is ook niet goed, dat is niet waar ze op gefocust hebben.

Toen begonnen we te groeien. We hebben eerst al onze kleinere statische bestanden zoals onze CSS en JavaScript-bestanden verplaatst. Al snel bewogen we zelfs onze actuele HTML-bestanden om gespiegeld te worden via Cloudfront (dit is niet ideaal om te doen, maar dat is een discussie voor een andere dag). 500 GB tot 5 TB tot 10 tot 50. Je doet de wiskunde, dat klopt snel. We kregen niet alleen 12 cent voor de eerste 10 TB, daarna 8 cent voor de volgende 40, maar we verzamelden ook een flinke rekening voor het aantal verzoeken. Het kwam op het punt dat ons effectieve tarief per GB bijna 18 cent was. Er is geen onderhandeling met Amazon voor kleinere uitgevers (althans dat denk ik niet), en zelfs als dat wel zo was, was hun prijsstelling zo ver van de basis dat ik er niet eens last van zou hebben gehad. Ik hou van alles over AWS voor de meeste van mijn projecten, maar het gebruik van Cloudfront om bestanden te distribueren is er niet een van.

MaxCDN / NetDNA

Allereerst wil ik zeggen dat ik dol was op MaxCDN. Hun back-end interface is een genot om te gebruiken. Ze hebben mooie goed uitziende grafieken op zowat elke statistiek die je zou willen hebben. Het ongeldig verklaren van een item in de cache is eenvoudig als taart. Kort nadat we de relatie begonnen, werden we overgeplaatst naar NetDNA, wat volgens mij de paraplu is waarop ze hun grotere klanten plaatsen en proberen om je te binden in een langetermijncontract. Hoe dan ook, het zijn precies dezelfde websites als ik kan vertellen. Ik geloof dat onze uiteindelijke onderhandelingskoers uitkwam op ongeveer 5-6 cent per GB, hoewel me daar niet precies aan vasthoud.

Dit brengt me bij het belangrijkste item over CDN-prijzen, waarover je zou moeten onderhandelen. Blijkbaar is de CDN-wereld zeer mismoedig, en ze zijn heel gemakkelijk om heen en weer van elkaar af te spelen. Het deed me eigenlijk denken aan de laatste keer dat ik een hypotheekofferte kreeg, omdat accountvertegenwoordigers vroegen om het contract van de ander en dergelijke te zien. Toen ik voor het eerst prijsoffertes van MaxCDN / NetDNA kreeg, kon ik een prijs bespreken zonder het voordeel van een andere concurrent die tegen bood. Ik heb net een betere offerte gekregen omdat ik probeer nooit de volledige prijs te betalen als dat mogelijk is. MaxCDN voert altijd uitstekende promotieaanbiedingen uit voor zowel nieuwe als bestaande klanten.

Uiteindelijk bleken er enkele beperkingen te zijn aan het cachen van de werkelijke inhoud waardoor een bepaald deel van onze applicatie faalde, wat voor ons een dealbreaker was. Ik zal niet ingaan op de details, maar ze krijgen een duim van me op zowel de service, UI, en prijs. Het zou voor 99% van mijn use-cases hebben gewerkt, alleen niet voor deze ene specifieke instantie.

EdgeCast

Edgecast is een zeer groot bedrijf, heeft een zeer goed netwerk en zeer concurrerende prijzen. Hun systeem was in staat om het probleem dat we tegenkwamen op te lossen met NetDNA, dus onderhandelden we een deal en ondertekenden het. Hun prijzen waren niet zo goed als NetDNA, maar hun back-end biedt veel flexibiliteit. Het is een back-end die absoluut is gebouwd door ontwikkelaars voor ontwikkelaars. De gebruikersinterface laat een hoop te veel wensen over, maar je kunt alles doen wat je maar kunt bedenken vanuit het oogpunt van caching. Met NetDNA zou ik me prettig voelen als ik een niet-technische persoon zou inloggen om de cache van een bestand te wissen, met Edgecast zou ik me niet zo veilig voelen als ik dat gedaan heb.

Ze proberen een beetje nikkel en dime te maken met een aantal extra functies in plaats van alles in de prijs te laten inbouwen. Ik kan me niet precies herinneren wat, maar bijvoorbeeld realtime rapportage. Nogmaals, dit is wie we momenteel gebruiken en ze hebben een uitstekende prijsstelling en uitstekende flexibiliteit vanuit een ontwikkelingsperspectief. Als je mijn perfecte CDN zou kunnen maken, zou het de prijs en UI van NetDNA zijn met de flexibiliteit van het Edgecast-beheer

Naar boven afronden

Ik ga geen snelheidsvergelijkingen maken. Ik heb wat snelheid getest en de snelheid in elk geval kwam uit op een bijna verwaarloosbaar verschil. Alle drie waren erg snel en alle accounts leken erg robuuste netwerken te hebben.

Er zijn 2 dingen die je hieruit zou moeten hebben gekregen:

  1. Gebruik Cloudfront niet
  2. Onderhandel prijs
  3. Ik geef de voorkeur aan MaxCDN / NetDNA, maar het komt er echt op aan wat je nodig hebt

En ja, er zijn natuurlijk veel andere CDN-netwerken, maar dit gaat niet over hen.

Zie Ook