5 ms·
"Now let’s remember that the internet is 1-to-many. If 1 million people download that 1GB this month, my cost with @cloudflare R2 this way rounds up to 13¢. Wi
by mmahemoff 5y ago
"Now let’s remember that the internet is 1-to-many. If 1 million people download that 1GB this month, my cost with
@cloudflare R2 this way rounds up to 13¢. With @awscloud S3 it’s $59,247.52."
When I first saw this, my thought was it's highly misleading since you'd normally be fronting S3 with a CDN, so you'd only have to pay once to transfer a given resource every few days/weeks/months if the CDN is doing its job, and it can be served to millions of people at no or low cost (already been free on Cloudflare for a long time).
Then I came to my senses and realised there's probably orgs who don't know/care about that and they're actually paying these fees for every request.
Anyway, it's excellent to see this released. S3 is not just more expensive and tied to a single data centre. It's also bad DX, e.g. setting up permissions is way too complicated and the console is "brutalist" in both look and function. I hope this spurs some more competition in the area of storage.
- aeharding 5y agoA lot of orgs use all AWS, with CloudFront for their CDN, which also has high outgoing bandwidth fees (cached or not)
- sudhirj 5y agoSo Cloudfront at the base price is more expensive depending on the geography. That said, you can restrict your price class to class 100, let the volume pricing kick in, etc to get a maybe a 10% to 50% discount at huge volumes. Or you could negotiate and prepay / pre-commit to get a 60% to 70% discount. The difference is still insane.
- calcifer 5y agoHe answered [1] that using AWS' on CDN actually makes things worse: > Okay, then it’ll be 8.5¢ to 12¢ per GB depending upon where you happen to be downloading it from. [1] https://twitter.com/QuinnyPig/status/1443135455763984384 https://twitter.com/QuinnyPig/status/1443135455763984384
- mattferderer 5y agoJeff Bezos has a famous quote - "Your margin is my opportunity" Kudos Cloudflare! You won the Internet this week!
- d3nj4l 5y agoCDNs aren't a silver bullet. CloudFlare's free CDN won't allow you to primarily serve non-HTML content. Other CDNs are way more expensive. If your usecase is like Twitter or GitHub, i.e. you have a few images on a bunch of pages and the odd file here and there, it's fine. But if you're making a photo or video sharing service you have no way around it.
- mmahemoff 5y agoThat's true. The example involves serving the same content to a million users, so it's more relevant to the cache-friendly web page scenario.
- berkes 5y agoI'd argue that Twitter and GitHub are excellent examples of where a CDN does not work. Some assets like logo's, headers, footers, css, fonts etc will improve greatly. But the main content is highly long-tail. And has a very high cache-miss chance. For 140 chars that's not going to matter. But all the images, videos, large source-codes, tarballs, builds, etc all add up. No CDN is going to help when a 30MB nightly build is only downloaded once ever. When a 2000line sourcefile is read maybe once a month. Or when a video in a tweet is seen by at most 2 followers ever.
- acdha 5y agoOne other factor to consider: how much of your response latency is dominated by things like HTTPS session initialization or TCP window scaling? If a CDN means that the client does all of that within a few miles of the user and then their traffic to your origin server runs over the CDN provider's backbone, potentially with other backend optimizations like persistent connections and HTTPS session caching, it might actually be the case that it's faster than going direct for the users most like to experience performance problems. For a single download of a large file, yes, it's probably not going to matter since you're talking a percentage of the total file transfer time but the story can be different for something like a web page where the client makes a single connection and reuses it for everything rather than having to establish connections to multiple servers, wait for window scaling to kick in, etc.
- ptcrash 5y agoPermissions Policies are confusing because they can get very complex... because enterprises need that functionality. IDK, maybe I'm in the minority but I don't think IAM is something that can/should be watered down.
- akdor1154 5y agoLast I checked there are four separate access control mechanisms for S3, of which IAM (both principal and resource policies) is a single one.
- ptcrash 5y agoACLs are deprecated and IAM is a single mechanism with multiple policy types (which again, I don’t think should be simpler… if anything, I find it’s not complex enough to handle some niche access requirements). Can you share what the other separate access control mechanisms you see for S3?
- akdor1154 5y ago- ACLs / object ownership (which aren't deprecated - https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-policy-alternatives-guidelines.html https://docs.aws.amazon.com/AmazonS3/latest/userguide/access...) - IAM / Bucket Policies as mentioned - S3 Block Public Access (yes this is the name of a distinct feature) - S3 Access Points The interactions between all four of the above need to be taken into account to determine the access a consumer has to a bucket or its objects. I'm not taking a swing at IAM - it's a great system. My grudge is with AWS having disparate interacting security controls for different services (of which S3 is probably the worst offender). To heave back onto the topic at hand, let's hope R2 can do better having the benefit of a clean slate to build off!
- dopylitty 5y agoDon’t forget KMS key policies which also apply if you are using SSE-KMS.
- glenngillen 5y agoApologies if it was just loose use of language, but S3 is not “tied to a single data centre”. It’s a single region. An object within it is spread across _at least_ 3 availability zones, each AZ consisting of multiple data centres.