w1n78
By:
w1n78

Host podcast files in DigitalOcean or AWS S3?

February 24, 2015 6.8k views

i'd like to start podcasting but one of the things i have to figure out is where to host the podcast files. right now i'm using jekyll to build my site and is hosted on S3. it's working out great. i was also think on using S3 to host the podcast files but if my calculations are correct, it would cost roughly $90 to max out 20GB of storage and 1TB of bandwidth per month - which in DO only cost $5 per month.

how i got $90 is as follows. according to S3 pricing (http://aws.amazon.com/s3/pricing/), the first 1TB of storage would cost $0.03/GB. so 20GB of storage at that price is $0.60. not bad. but where the price goes up is the transfer. up to 10TB of transfer cost $0.09 per 1GB. if you calculate 1TB (1000GB), that's $90. i didn't factor in the request costs but it should be small. with this calculation, it looks like DigitalOcean is a better fit. did i calculate the S3 correctly and made a fair comparison?

if i host the files in DigitalOcean, i assume all i need is an ubuntu box running nginx correct?

3 Answers

You are correct, a basic install of Ubuntu with nginx should do the trick. The one thing to note is that should you get close to your 20GB limit it would require resizing the droplet which will require up to 30 minutes of downtime so be sure that you select a plan with enough space for your needs for a while. As for bandwidth, the $5 plan includes 1TB of transfer (inbound + outbound) on the public interface. Once you reach the 1TB limit in a month additional bandwidth would be billing at a rate of $0.02/Gb.

  • @ryanpq thanks for the input. i'm not expecting my podcast to get that popular - it's more of a proactive, just in case thing. but the price between the services are huge. i didn't realize in DO the transfer counts as both inbound + outbound but that shouldn't be a problem since mp3 files are small anyway. well, if i outgrow the lowest DO plan, that's a good sign that i should take the project more seriously. but for now it's just a hobby i'm looking into.

  • I should also note that while the bandwidth overage charges ($0.02/Gb over 1TB on the $5 plan) I mentioned are displayed on our site we are not yet charging these fees. Our control panel does not yet provide bandwidth use reports and until these are made available bandwidth is essentially unlimited.

It is possible to mount DreamObjects as a folder on your droplet.

http://www.dreamhost.com/cloud/storage/

DreamObjects is 2.5cents per GB, so you could possibly use that to store files.

I use this method as my backups folder, and it works great for that. It costs me less than $1.00 per month and I back up several droplets every night.. I wrote a tutorial on how to set it up:

https://firefli.de/tutorials/s3fs-and-dreamobjects.html

You could use the same method for AWS storage, but the price is slightly better for DreamObjects.

Also try using a CDN solution like cloudflare.com it will speed things up, and reduce your monthly bandwidth bill, so more bandwidth available for audio files.

  • i'm unsure what you mean. isn't the calculation of bandwidth the same regardless of whether it's cached? for instance, if my file is 100MB big, cached in the US, and 10 different people from the US request it, wouldn't that be considered 1GB of bandwidth used? caching just helps with speed and distribution, not necessarily reduce the amount of bandwidth charged against you. or am i mistaken?

  • It depends on the CDN you use, in the case of Cloudflare you are not charged by bandwidth, only by extra features.

    So if you have a 100mb file and is requested only once from your hosting to cloudflare (US) you are only charged for those 100mb once by your hosting company. Also I was thinking more about static content, not the audio files (this ones are not cached by Cloudflare,at least not on free plans, not sure on premium, but you know even if you only cache for free other static files you still got some unused bandwidth free to play with. every bit counts.

Have another answer? Share your knowledge.