
Ask HN: Best alternative for image hosting/scaling for high traffic site? - jrod2121
Previously we hosted everything right off of our own server, but as our traffic has grown, we moved to cloudinary so that we could utilize their systems features to do image resizing and scaling on the fly and serve images through their cdn which would help speed up our app.<p>Unfortunately, we&#x27;ve priced ourselves outside of cloudinary and need to look elsewhere. Right now we&#x27;re doing close to 1TB bandwidth with cloudinary and they want $500+&#x2F;mo for it.<p>Our site receives a lot of traffic and no matter how well we resize&#x2F;compress our images, we just use too much bandwidth through them.<p>What&#x27;s the best alternative here? Should we use one of amazon&#x27;s services and are there any integrations we can use to help with image resizing&#x2F;scaling on the fly?
======
stephenr
So it appears that your concern here is the cost. I'm going to assume that
jumping out of a hot frying pan (expensive right now) into a slowly boiling
pot of water (expensive in 6 months) is not your ideal choice either, so I'll
do what I usually do, and try to suggest something that is less about a
specific vendor's services, and more about the basic tools, which are
available from a multitude of vendors.

Also, do you _really_ mean 1 terabit (1000 gigabits) (per second) of
_bandwidth_ consumption, or do you mean the thing the vast majority of people
(including some hosting company staff!) actually mean when they say bandwidth:
1 _terabyte_ of _data transfer_ (e.g. per month)?

I'm going to _assume_ you mean data transfer per month, because the other one
is just insane.

The data transfer itself shouldn't be that expensive. With a 'traditional' VPS
host it's maybe $15 for 1TB of data transfer. For EC2 its gonna be closer to
$90. Either way, that isn't where the cost is going - it's whatever they're
doing "for" you.

I would suggest you identify how much benefit you get from whatever process
they provide for images, and see if you can get reasonable performance from a
simpler solution that isn't tied to a single vendor - i.e. I would suggest
going back to storing your original assets yourselves somewhere (could be
regular server(s), could be S3, could be B2, etc), put a simple image resizing
layer in front of it (if that's all it's doing, its probably an afternoon's
work for someone), and then put your choice of cache in front of that.

For the cache, you could go with a CDN if you have distributed users, if your
users are relatively localised, you could go with a couple of high-memory
varnish servers.

If we had some more information (e.g. what is the scale of images stored to
images served; that is, how much storage space are you using for your original
image set, how many images are we talking about, and how many variations of
each image are you potentially using?) it would allow for more informed
suggestions.

------
karim79
You can use Kraken.io's image optimization/recompression/resizing API [0] to
push your images directly to one of the popular cloud/object stores (S3,
Rackspace CloudFiles, Microsoft Azure and SoftLayer Object Storage are
supported at the time of writing). That should afford you some flexibility
over which CDN you choose, since you are now separating the processing aspect
from the distribution to some extent.

[0] [https://kraken.io/docs/getting-started](https://kraken.io/docs/getting-
started)

------
amitshrn
We can assist with tuning image optimization in your implementation, to
improve ux and save bandwidth & cost. We are also happy to help with a startup
discount. Reach out to our support? (Amit, Cloudinary)

------
kiloreux
Please take a look at Transloadit[0], we offer a ton of features and have a
good pricing model, that I believe will be excellent for your case, we'd be
very happy to talk over it and offer you a good discount, please email me at
abdel[@]transloadit.com

[0] [http://transloadit.com/](http://transloadit.com/)

------
jrod2121
I'm looking to be able to have all those features on a platform that doesn't
charge us $500+ a month.

We have users uploading images to our system. We use cloudinary to
automatically resize/compress those images down, and then they are served up
through their CDN.

Our issue is we have too much traffic, so we use a lot of bandwidth.

------
jjoe
Are you resizing images to reduce transfer size or because your app needs to
present images in different sizes? Why aren't you scaling app-side rather than
server-side?

We manage servers for client with a similar requirement but it rarely exceeds
$250/mo for several TBs plus the cost of a consumer CDN.

------
kennell
What is your main concern here? The resizing/scaling/compressing part or the
CDN?

------
raooll
Amazon s3 + Thumbor.org + CDN (if required)

