Ah, if only this was fully available ~ 4 months ago.
I transitioned my recipe app with ~ 80,000 images from Cloudinary to a combination of Backblaze B2 + Bunny.net a few months ago. I heavily use the resizing and optimizing features.
It's saved me a ton of money, but if I could have used B2 + Cloudflare with their 0 bandwidth alliance, I could have saved more, I think - haven't done the math though.
In the grand scheme of things, though, I've worked with Bunny now and love the interface, and performance. The one time I contacted support, I spoke 1 on 1 with , I believe, the founder of Bunny. He was cool.
Cloudflare is doing some killer things, excited for that. But glad to see we have small name alternatives to everything (S3 to B2, Cloudflare to Bunny, etc) that can compete on price and functionality.
Have you considered imgix? It's like Cloudinary, but with flat pricing per # of origin images. Transformations and bandwidth don't cost extra. It's nice because you don't have to manage yet another stack, just plop in a URL and you're done.
It seems like Cloudflare wants you to predefine all the "variants" (transformations) as specific templates in their GUI, whereas Cloudinary and Imgix are much more flexible and accept specific URL parameters to create those transformations.
CloudFlare nearly shut down my account for “fraud” because I bought two domain names in a short time period while traveling in a foreign country. I hope they can resolve the mistake of handling customer administration through algorithms rather than humans, because their products are absolutely phenomenal.
Moral of the story is: if you’re going to play around with new features such as this (which I plan on doing!), set up a new account. Always, always compartmentalize.
I really like Cloudflare's product (and even own some shares!), but their fraud/phishing/scam-handling is an issue.
A client of mine got a fraudulent impersonation/phishing-claim (completely ridiculous, the page in question is passive and contains no login ability, no 3rd party scripts besides GA) and CF automatically banned that subpage of the domain. You can appeal to their Trust & Safety team, but they either don't exist or are severely understaffed. It's been a month or so without any feedback, on the forums, people are talking about waiting for six months. Tech support will only "escalate" the issue to T&S where issues go to die.
It's a great way to boot competitors though: file a claim, their visitors will get a scary "Warning: Suspected Phishing Site Ahead!" page they need to actively dismiss, and the site owner can't fix it short or migrating away from CF. I'm guessing enterprise will buy you a direct line to someone who can do something though.
Haha, when I first clicked on the post I was expecting to learn about a new container image registry living right on the edge with cloudflare. Boy was I confused reading the first few paragraphs.
> You pay $5/month for every 100,000 stored images and $1 per 100,000 delivered images. There are no additional resizing, compute or egress costs.
Pricing seems really reasonable, and the resizing feature seems pretty slick.
IIRC regular cloudflare will still cache assets for free. This tool is specifically for people who don't want to write a pipeline to do image resizing/optimization themselves. If you're able to write your own pipeline to do sprite sheets, you probably don't need this service to begin with. Just preprocess everything yourself and serve those at $0 per gb.
I’m loving it. Cloudflare is a good and reliable service provider, I expect it to expand their cloud offerings in the future like drop-in S3 replacement, application logging, etc…
I would like to define a pipeline of Workers that get to act on the request / response and count the whole pipeline as a single Worker run as long as I stay within the limits for normal workers. That way I can write composable, reusable workers that perform very specific tasks (like pipes). There could even be a GUI to let me enable / disable parts of the pipeline.
I can do that right now by jamming everything into a single source file, but it would feel better (to me) as a pipeline. It would also be cool if I could stick (headless) Cloudflare apps that are glorified workers into a pipeline like that (at a specific position).
Something that I've found difficult in the Cloudflare ecosystem is understanding the order of execution for everything (access, cache, workers, apps, page rules, etc.). It would be useful to have a dedicated resource that lists that.
Also, the preview pages for every app I've looked at today give an unsafe content warning [1].
I am wondering if Cloudflare is gearing up to be a true competitor to AWS a la GCP and Azure. All it'd take is an EC2-like offering for them to have everything many companies need. You can build out the rest of your managed services (e.g. RDS, ElastiCache, S3) slowly over time.
Cloudflare seems to have a much more cohesive vision for their cloud than AWS does, and I think it could be a competitive advantage for them.
If I serve cloudflare images on my non-cloudflare hosted webpage, would the visitors still occasionally see the injected DDoS protection “checking your browser before accessing” page or would the images just fail to load then? Or is that browser checking disabled if just loading images?
That’s one reason why I haven’t checked out Cloudflare Pages, my (already statically hosted) website will unlikely be DDoSed and I wouldn’t want to impact user experience by adding random browser checks…
The JavaScript Challenge pages only run on dynamic assets, and so won’t impact image assets served.
Beyond that:
• You can turn down the sensitivity of the challenge pages: https://support.cloudflare.com/hc/en-us/articles/200170056-U...
• Since Cloudflare Pages is fully hosted on us, we can soak the DDoS and don’t have to worry about letting things through to origin infrastructure. Benefit of serving directly from the edge :-)
I want something similar to this for favicons. As stupid as that sounds, dealing with favicons is a huge pain. There are so many variants required and every vendor seems to do their own thing.
For example, when you click the share button in Safari on an iPad, it'll download every `link rel="icon"` image you list in html even though it doesn't need them. It would be really awesome to use a worker to inspect the user agent and modify responses to return exactly what's needed for that client.
The pricing for this service won't work for favicons since the cost per response is way too high, but I honestly think it'd be worth $5 / month if I could just upload a SVG favicon for my site and click a button to "Optimize Favicons".
I transitioned my recipe app with ~ 80,000 images from Cloudinary to a combination of Backblaze B2 + Bunny.net a few months ago. I heavily use the resizing and optimizing features.
It's saved me a ton of money, but if I could have used B2 + Cloudflare with their 0 bandwidth alliance, I could have saved more, I think - haven't done the math though.
In the grand scheme of things, though, I've worked with Bunny now and love the interface, and performance. The one time I contacted support, I spoke 1 on 1 with , I believe, the founder of Bunny. He was cool.
Cloudflare is doing some killer things, excited for that. But glad to see we have small name alternatives to everything (S3 to B2, Cloudflare to Bunny, etc) that can compete on price and functionality.
Good stuff, though! More options the better!
It seems like Cloudflare wants you to predefine all the "variants" (transformations) as specific templates in their GUI, whereas Cloudinary and Imgix are much more flexible and accept specific URL parameters to create those transformations.
EDIT: Actually, Cloudflare supports that too (https://developers.cloudflare.com/image-resizing/url-format), it just wasn't mentioned in this blog post.
Moral of the story is: if you’re going to play around with new features such as this (which I plan on doing!), set up a new account. Always, always compartmentalize.
A client of mine got a fraudulent impersonation/phishing-claim (completely ridiculous, the page in question is passive and contains no login ability, no 3rd party scripts besides GA) and CF automatically banned that subpage of the domain. You can appeal to their Trust & Safety team, but they either don't exist or are severely understaffed. It's been a month or so without any feedback, on the forums, people are talking about waiting for six months. Tech support will only "escalate" the issue to T&S where issues go to die.
It's a great way to boot competitors though: file a claim, their visitors will get a scary "Warning: Suspected Phishing Site Ahead!" page they need to actively dismiss, and the site owner can't fix it short or migrating away from CF. I'm guessing enterprise will buy you a direct line to someone who can do something though.
> You pay $5/month for every 100,000 stored images and $1 per 100,000 delivered images. There are no additional resizing, compute or egress costs.
Pricing seems really reasonable, and the resizing feature seems pretty slick.
Breakdown of delivery costs based on your image sizes:
Image size | Total bandwidth used | Effective cost per GB
10MB = 1000GB = $0.001 per GB
5MB = 500GB = $0.002 per GB
1MB = 100GB = $0.01 per GB
200KB = 20GB = $0.05 per GB
50KB = 5GB = $0.2 per GB
50KB = 5GB = $0.20 per GB
Which would make you want to break out the old school spriting tools :) I guess don't serve thumbnail galleries from CF.
> You only pay for original images; not variants
https://developers.cloudflare.com/images/faq
I would like to define a pipeline of Workers that get to act on the request / response and count the whole pipeline as a single Worker run as long as I stay within the limits for normal workers. That way I can write composable, reusable workers that perform very specific tasks (like pipes). There could even be a GUI to let me enable / disable parts of the pipeline.
I can do that right now by jamming everything into a single source file, but it would feel better (to me) as a pipeline. It would also be cool if I could stick (headless) Cloudflare apps that are glorified workers into a pipeline like that (at a specific position).
Something that I've found difficult in the Cloudflare ecosystem is understanding the order of execution for everything (access, cache, workers, apps, page rules, etc.). It would be useful to have a dedicated resource that lists that.
Also, the preview pages for every app I've looked at today give an unsafe content warning [1].
1. https://imgur.com/a/KRTdjRM
Cloudflare seems to have a much more cohesive vision for their cloud than AWS does, and I think it could be a competitive advantage for them.
That’s one reason why I haven’t checked out Cloudflare Pages, my (already statically hosted) website will unlikely be DDoSed and I wouldn’t want to impact user experience by adding random browser checks…
Beyond that:
• You can turn down the sensitivity of the challenge pages: https://support.cloudflare.com/hc/en-us/articles/200170056-U... • Since Cloudflare Pages is fully hosted on us, we can soak the DDoS and don’t have to worry about letting things through to origin infrastructure. Benefit of serving directly from the edge :-)
(I work at Cloudflare, if that’s not clear)
For example, when you click the share button in Safari on an iPad, it'll download every `link rel="icon"` image you list in html even though it doesn't need them. It would be really awesome to use a worker to inspect the user agent and modify responses to return exactly what's needed for that client.
The pricing for this service won't work for favicons since the cost per response is way too high, but I honestly think it'd be worth $5 / month if I could just upload a SVG favicon for my site and click a button to "Optimize Favicons".
https://caniuse.com/link-icon-svg