Some caution with cloudflare:<p>Because they give a lot away and post blog posts attacking AWS folks think they are cheap. But a lot of their free stuff may be in the marketing budget. The issue here is:<p>1) Their paid offerings for their core product, CDN, does not have a public pricing guide. That's a BAD sign if they claim to be competing on price. So we can pretty safely assume their paid service bandwidth charges are NOT the 80X cheaper than amazon despite their claims here.<p>2) They hype their bandwidth alliance. I tried following this up on Azure, it's basically all call a sales person / maybe you'll get a deal type stuff. Smoke and mirrors again.<p>3) If you actually try to use their CDN to serve something high bandwidth (games / software updates / video streaming) that is going to violate some type of clause which says that the free CDN is not REALLY unlimited.<p>4) Financially they spend a mind boggling amount on sales costs. Between sales costs and cost of sales I think they are negative relative to revenue.<p>BTW - If you try any of the other "free" and "unlimited" providers (for $5/month etc) you will also find out once you try to move some real data volumes (video etc) - it's all a lie over and over.<p>Same things with geo issues. Cloudflare claims to have "one" price globally. These are almost alwyas false claims. It's easy to test - setup a stream into a high cost area, stream a bunch of video there - you'll usually get a call over some tricky TOS issue they pull out.<p>In short, if you want pay and forget, there is a reason the big cloud players have a business still.
Using Cloudflare to proxy B2 content seems like it directly violates Cloudflare's ToS.<p><a href="https://www.cloudflare.com/terms/" rel="nofollow">https://www.cloudflare.com/terms/</a><p>> 2.8 Limitation on Serving Non-HTML Content<p>> The Services are offered primarily as a platform to cache and serve web pages and websites. Unless explicitly included as part of a Paid Service purchased by you, you agree to use the Services solely for the purpose of (i) serving web pages as viewed through a web browser or other functionally equivalent applications, including rendering Hypertext Markup Language (HTML) or other functional equivalents, and (ii) serving web APIs subject to the restrictions set forth in this Section 2.8. Use of the Services for serving video or a disproportionate percentage of pictures, audio files, or other non-HTML content is prohibited, unless purchased separately as part of a Paid Service or expressly allowed under our Supplemental Terms for a specific Service. If we determine you have breached this Section 2.8, we may immediately suspend or restrict your use of the Services, or limit End User access to certain of your resources through the Services.<p>If this was truly acceptable and not in some grey area, why doesn't Backblaze simply route all downloads through Cloudflare by default, rather than having each individual customer go through the hassle of setting this up?
This B2/CloudFlare combination is a good one.<p>CloudFlare are about to launch their own object/file store with native CDN called R2. They have even come up with a wonderful trick for migrating to it from S3 and it’s looks like it’s going to have an incredible generous level of free egress. I suspect that it will beat out the B2/CloudFlare combination once it launches.<p><a href="https://blog.cloudflare.com/introducing-r2-object-storage/" rel="nofollow">https://blog.cloudflare.com/introducing-r2-object-storage/</a><p>Edit: Typo
Many of the files will violate cloudflare terms of service. You cannot put video files behind normal cloudflare cdn as an example.<p>This is a risky setup.
I was expecting to read about how to set up the infrastructure to run my own CDN infrastructure for free (hard to believe is possible, so I clicked).<p>Instead, it's an article about how to use Cloudflare to deliver static assets for free, on Cloudflare's free tier.<p>Edit: I would love to read more about how to set up a cheap self-managed CDN, perhaps using cheap VPS servers spread out in different regions.
You can get literally Free CDN using GitHub repo:<p><a href="https://gist.github.com/jcubic/a8b8c979d200ffde13cc08505f7a6436" rel="nofollow">https://gist.github.com/jcubic/a8b8c979d200ffde13cc08505f7a6...</a>
Assuming this is for websites, what's the recommended way of handling cache busting with this kind of setup? The article has a slightly awkward paragraph that tells you to set long TTLs for everything and concludes with "tweak these settings", which kind of sounds like "draw the rest of the owl". Might be a good reason to use something that integrates all this (eg. Cloudflare Pages, since you're already using Cloudflare).
I know every use case is different, so this may not matter for most. But in my experience, the performance of B2 was quite poor in comparison to other S3 compatible options. It seemed like the crux of the issue was slowness in their API. Generating pre-signed URLs for file upload or download was quite a bit slower, resulting in a poor user experience in my application.<p>If you're just using it to upload public static content for your site, this shouldn't be an issue. But if you're dealing with private content it probably isn't the optimal solution.
I've been using Cloudflare free in front of App Engine's free tier for a few years and it really seems too good to be true. I can go viral and scale to infinity, for exactly $0.
This seems more or less like the B2 help document on the matter: <a href="https://help.backblaze.com/hc/en-us/articles/217666928-Using-Backblaze-B2-with-the-Cloudflare-CDN" rel="nofollow">https://help.backblaze.com/hc/en-us/articles/217666928-Using...</a>
"if everyone does it, they won't let you do it" -the infinite cache life on CF only works because 99.99% of use of the cache stays in rational cache lifetimes. If everything had long persist, CF would begin cache ejection, and your cost goes up, or they change the ToS to forbid it.<p>LRU exists for a reason.
Interesting setup.<p>And with Rails, it appears that there’s a third party ActiveStorage adapter for BackBlaze.<p><a href="https://github.com/jeygeethan/activestorage-backblaze" rel="nofollow">https://github.com/jeygeethan/activestorage-backblaze</a><p>Direct uploading from client :
<a href="https://github.com/jeygeethan/activestorage-backblaze-javascript" rel="nofollow">https://github.com/jeygeethan/activestorage-backblaze-javasc...</a>
Does it support byte-range? so it can be used as a “server free” SQLite database:
<a href="https://phiresky.github.io/blog/2021/hosting-sqlite-databases-on-github-pages/" rel="nofollow">https://phiresky.github.io/blog/2021/hosting-sqlite-database...</a>
Haven't a lot of people on HN warned against using Backblaze for backup because of issues restoring from backup? I recall reading someone having to pay to have a physical drive sent to them to restore a backup because of speed/cost issues trying to restore over network.
B2-Cloudflare was a great companion when Cloudflare's Bandwidth Alliance was a thing and outgress from B2 to Cloudflare didn't cost anything, which means that outgress was completely free since Cloudflare don't charge on outgress.
I have been very happy with DigitalOcean spaces for $5/month including 250GB storage, 1TB outbound, and custom domains. Seems like something more closely comparable to this set up so I am surprised it isn't part of the comparison.
I've done this by using Cloudflare Workers. I can confirm that I did not see any bandwidth charges at B2, although I've only tested a few GB of transit. Likely if you tried to host brew here, you'd get yelled at.
Is anyone building CDN service on top of IPFS? IPFS is certainly too slow for many applications but perhaps there are tiny niches where it makes sense today? More like tape drive storage?