7 ms·
Ask HN: Clever ways to run a media-heavy website on a budget?
I've been taking a break from working to relax and visit some friends in a few countries. So I don't have a lot of money, but with my newfound free time, I've been inspired to take a shot at a few ideas I've always wanted to build.
One idea is particularly media heavy. I have 5+ TB of media that I'd like to build something around.
Services like S3 are pretty expensive, especially bandwidth. Backblaze has been trying to market their storage solution (https://www.backblaze.com/b2/cloud-storage-pricing.html) against S3.
But I can get even cheaper by using low quality hardware and bandwidth like Kimsufi's 2TB machines for $10/mo (https://www.kimsufi.com/en/servers.xml).
Does anyone have another ideas for stretching a dollar?
- senatorobama 9y agoIllegal streaming?
- lev99 9y agoI was thinking porn.
- megamindbrian2 9y agoYou could transcode with VLC/Elastic Transcoder and store that in the cloud until an individual file is requested.
- hunvreus 9y agoCloudflare is free: CDN the heck out of it.
- scrollaway 9y agoThis very much. You can also save all your media with content hashes in their filename, then tell cloudflare to "always permanently cache" everything behind a certain path using a page rule. I have a site set up like that which serves over 1TB monthly and <5GB of it actually goes through to S3. (And obviously you don't have to use s3 to back it, you can use anything) Bonus points: If you do it this way you can also use immutable caching for clientside savings. More info: https://hacks.mozilla.org/2017/01/using-immutable-caching-to-speed-up-the-web/ https://hacks.mozilla.org/2017/01/using-immutable-caching-to... This may be dependent on how large your media is however. 5TB sounds like it could be large videos, so some of this may not apply to you. I don't know how well Cloudflare caches videos.
- SXX 9y agoAny evidence that Cloudflare will cache even fraction of his 5TB on free plan? While I personally have sites where like 20GB of images were cached on free tier I truly don't expect them to cache as much as even 1TB. > I don't know how well Cloudflare caches videos. It's cache files only under 512MB: https://support.cloudflare.com/hc/en-us/articles/200394750-What-s-the-maximum-file-size-CloudFlare-will-cache- https://support.cloudflare.com/hc/en-us/articles/200394750-W...
- harlanji 9y agoCF does a good job caching, if you do a good job segmenting. Here's a screen cast I did a while back exploring HLS: https://www.youtube.com/watch?v=v9TJuWT5sNM&t=6m27s https://www.youtube.com/watch?v=v9TJuWT5sNM&t=6m27s
- vidyesh 9y agoDoes Cloudflare cache everything no matter how much you feed it? You said <5GB goes through to S3 so that is from the total 1TB of data?
- joshribakoff 9y agoThey have a history of randomly deciding it's not free and shutting off people's service without notice. It also slows down your site (cache misses)
- sudhirj 9y agoNot so randomly - they seem to shut down sites that take the CDN freeloading to an extreme - image hotlinks, lots of data with not HTML, that kind of thing. If the entire site is being served via CF, they might not mind. They do have a video service in the works, though, need to see how that pans out.
- joshribakoff 9y agoWhat about a site with a little HTML but lots of files. "Might not mind" doesn't sound like something I would bet my business on. There is a gray area and you can find examples of people that got shut down (without warning) whom would disagree that they crossed that line
- sudhirj 9y agoGet a paid plan if you’re a business or are serious about your site. Don’t think they take unilateral action on paid plans. There’s also an option to pay for bandwidth somewhere, there certainly is when you activate Argo. Can’t really accuse you of free loading once you pay.
- pecicek 9y agoIn case Cloudflare's free plan is not enough, I'd suggest going for proven low cost providers such as CDN77, KeyCDN or MaxCDN.
- DDR0 9y agoHow about using something like Websockets to reduce outbound cost? It'll have anyone on the page viewing the media also host the media for their fellow web surfers. If I recall, there is a socket-based bittorrent library floating around somewhere - https://github.com/webtorrent https://github.com/webtorrent might be a good start. :) Serve the static web-page files from a decent host. Seed the 5tb of content from the cheap host.
- voltagex_ 9y agoAnd what if your users are charged for upstream bandwidth?
- solarkraft 9y agoThat's a. Unlikely, where have you seen this before? b. A reasonable price to view the page.
- AzMoo_ 9y agoUploads are metered on loads of Internet plans in Australia.
- voltagex_ 9y agoI was thinking more of phone data plans - they're even more limited (although strangely Australia's got some of the best plans at the moment outside of Europe)
- argestes 9y agoMobile internet plans mostly charge for upstream too. (I'm from Turkey)
- fratlas 9y ago1TB for $5/month on digitalocean ain't bad
- wolco 9y agoThat's only 25g of storage
- loganekz 9y agos3 with cloudfront https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/MigrateS3ToCloudFront.html https://docs.aws.amazon.com/AmazonCloudFront/latest/Develope...
- lubos 9y agoThat's probably the most expensive route you can go once you have any decent traffic.
- th0ma5 9y agoWhat about text content only? This is free SSL with Let's Encrypt but Cloudfare seemingly charges for SSL. Edit: Seemingly it could be free, but you must manually handle your certs to some degree. Edit 2: Cloudfront now comes with "AWS Shield Standard" automatically to protect from DDOS?
- wild_preference 9y agoI've actually used that combination before and I would hate for the person that DDoSed me to know how much they cost me.
- CodeWriter23 9y agoDefinitely hide whatever you implement behind CloudFlare.
- kondro 9y agoI think literally the only more expensive option you could’ve suggested is Akamai.
- Geee 9y agoWhat kind of media? You might be able to avoid hosting them on your own servers. If it's video, you can use Youtube. If it's images, use Flickr or something else.
- zawerf 9y agoI don't recommend this, but if your media are images, some really large manga sites (kissmanga.com, a top 500 site in the US according to alexa) have been using blogger.com to host from Google Album Archive for years now and still haven't been shut down. They are probably pushing hundreds of terabytes in bandwidth per month for free.
- wild_preference 9y agoThat's probably exactly what I should do.
- 3stripe 9y agoDoes that mean your ‘media’ is image-based? Please tell us some more about your idea.. cos if it’s video, much of the below is moot.
- 3stripe 9y agoPS. http://silversuit.net/blog/2016/04/how-to-set-up-a-practically-free-cdn/ http://silversuit.net/blog/2016/04/how-to-set-up-a-practical... ... 5tb on Backblaze B2 = $25/month
- alex621101 9y agoLinode $5 server + cloudflare for free
- icebraining 9y agoA Linode $5 server only has 20GB of storage. OP has 5TB.
- kondro 9y agoCloudflare question: when would they start to get mad at you using potentially PBs of bandwidth per month on a free plan?
- jgrahamc 9y agoIt depends what you're doing. If you use us as some kind of file host then that's a ToS violation.
- kondro 9y agoThose TOS are both very restrictive and vague at the same time though. On one hand specifying that literally only HTML can be hosed through the platform whilst simulataneously suggesting that caching other content is fine, as long as it’s not “disproportionate” (but disproportionate to what?). “SECTION 10: LIMITATION ON NON-HTML CACHING You acknowledge that Cloudflare’s Service is offered as a platform to cache and serve web pages and websites and is not offered for other purposes, such as remote storage. Accordingly, you understand and agree to use the Service solely for the purpose of hosting and serving web pages as viewed through a web browser or other application and the Hypertext Markup Language (HTML) protocol or other equivalent technology. Cloudflare’s Service is also a shared web caching service, which means a number of customers’ websites are cached from the same server. To ensure that Cloudflare’s Service is reliable and available for the greatest number of users, a customer’s usage cannot adversely affect the performance of other customers’ sites. Additionally, the purpose of Cloudflare’s Service is to proxy web content, not store data. Using an account primarily as an online storage space, including the storage or caching of a disproportionate percentage of pictures, movies, audio files, or other non-HTML content, is prohibited. You further agree that if, at Cloudflare’s sole discretion, you are deemed to have violated this section, or if Cloudflare, in its sole discretion, deems it necessary due to excessive burden or potential adverse impact on Cloudflare’s systems, potential adverse impact on other users, server processing power, server memory, abuse controls, or other reasons, Cloudflare may suspend or terminate your account without notice to or liability to you
- pornel 9y agoNo. If it's just lots of files & lots of regular users, and you're not running anything illegal/abusive, then it's fine.
- berbec 9y agoGSuite + rclone mount for storage + unlimited bandwidth vps. Check out lowendbox.com
- indigodaddy 9y agoCheck out BuyVM.net's Storage VPS offerings. Unlimited transfer apparently. Ultra competitive pricing and they don't overprovision. They're well established and quite reputable in the hosting community. Largest disk space offering appears to be 2TB, however if you contact them they might be able to work something up for you. Note: No affillation, but I've had a few small VPS'es with the. Very reliable shop.
- pnutjam 9y agoThat looks way more expensive then time4vps.eu. I have a storage server with them. THis is my affiliate link, https://billing.time4vps.eu/?affid=1881 https://billing.time4vps.eu/?affid=1881
- phasecode 9y agoStore your files in backblaze then proxy them through some cheap vps (to cover bandwidth) and add local cache through something like nginx so you're not going to the source frequently.
- iMerNibor 9y agoSome hints: ovh is good for eu/(northern) us (loadbalancing ip + vps behind it to spread load - be prepared to ditch vps if you're getting horrible performance), scaleway if you can live with just eu Probably as cheap as it gets from big providers Obviously going to have to compromise (round robin dns > ~1gbps, self managed stuff), but thats just expected If it's just images probably just go with cloudflare
- joshribakoff 9y agoCan make byte range requests a bit complicated and slows down your site when there's cache misses
- fleitz 9y agoUse the slice command in nginx and $slice_range your cache key ;)
- joshribakoff 9y agoI'm not asking for advice I'm stating it does technically complicate your setup. What if two people request overlapping ranges concurrently etc... it is more moving parts to setup, test and administer
- mozumder 9y agoI use my home ISP with a home server on a static IP address. My server is something I built myself, and contains about 30TB of media storage (FreeBSD ZFS setup), plus NVMe SSDs for database. Unlimited bandwidth, unlimited storage, and super fast. Holy crap is it fast.
- icebraining 9y agoWhat's your upload bandwidth? Around here they're 1/10 of the download, so you'd need a pretty expensive plan to serve a heavy website.
- mozumder 9y agoSame upload & download. This is on Verizon Business FIOS.
- pnutjam 9y agoThat's 9.99 Euro's. I use Time4vps.eu. Their prices are the same, but I have an older plan that was cheaper. They do offer specials occasional as well. I have their 1TB plan for about $15 /quarter.
- dawnerd 9y agoI have a server from here: https://www.nocix.net/dedicated/ https://www.nocix.net/dedicated/ Not necessarily the most reliable provider but hard to beat the prices, especially for their larger servers. Since you said you were working with media, a vps will probably have pretty poor performance if you're doing any transcoding or the such.
- mappu 9y agoWasabi (S3-compatible) recently released an "Unlimited Egress" plan with unmetered bandwidth: https://wasabi.com/pricing/ https://wasabi.com/pricing/ That puts 5TB storage at $24/mo.
- jazoom 9y agoDo you have any idea where their datacentres are? They claim they're 6x faster than S3 but I'll bet it's 20 times slower with latency unless they have a Sydney datacentre. You'd think this is info they'd put somewhere findable on their website.
- voltagex_ 9y ago"Wasabi is deployed in fully secure and redundant data centers that are certified for SOC-2, ISO 27001, and PCI-DSS. Our primary production data center is in the us-east region and additional data centers in other regions will be activated soon. Please contact us if you have specific questions in this area."
- jazoom 9y agoThank you
- stordoff 9y agoWorth noting that: > If your use case creates an unreasonable burden on our infrastructure, we reserve the right to limit your egress traffic and/or ask you to switch to our Legacy pricing plan. Wasabi’s hot cloud storage service is not designed to be used to serve up (for example) web pages at a rate where the downloaded data far exceeds the stored data or any other use case where a small amount of data is served up a large amount of times. https://wasabi.com/pricing/pricing-faqs/ https://wasabi.com/pricing/pricing-faqs/
- codegeek 9y agoLook at DigitalOcean spaces. 250 GB storage, 5TB bandwidth for $5/Month. Works with most S3 compatible sdks already
- deleted 9y ago[deleted]
- joshribakoff 9y agoDigital ocean has super cheap block storage and currently has no way to track bandwidth usage (currently overages are not billed). GlusterFS is also useful. I cut latency in half switching from s3 to glusterFS
- CodeWriter23 9y agoI believe you mean super cheap Object storage. Their block storage is $0.10/GB/Mo. which is pretty much the going rate.
- SXX 9y agoOne of cheapest options with 20TB+ of free bandwidth would be Hetzner auction. These servers might be not super reliable, but they don't have setup fee and still capable of serving your files: https://robot.your-server.de/order/market https://robot.your-server.de/order/market
- tudorconstantin 9y agoI am using hetzner for about 5 years and had absolutely no problem with them. I am paying 30 EUR/month for a machine with an older generation i7 CPU, 24 GB of RAM, 2x750 GB HDD and 20TB of monthly traffic. The price is close to the electricity cost if I were to host the machine in my home. During these 5 years the machine had not a single downtime. I've read stories that they had lousy tech support, but can't confirm, since I never needed it. Overall I had a great experience with them so far, so I also recommend them whenever I can.
- zorked 9y agoAnother data point: I used to buy servers in Hetzner's auction by the dozens per month. It's very common that the servers will crash and need new HDDs or RAM. I never had a problem with support, but soon learned to treat those servers like cattle: if one is broken, return it and grab a new one. They are worth it even if you have trouble, though. Just make sure you have a backup plan.
- imhoguy 9y agoAgree with that. I also advise to avoid machines with i7-3770 there. I had a problem with this CPU and some mobo combination which ended up in random crashes under network/disk load. More evidence here: https://www.webhostingtalk.com/showthread.php?t=1200617 https://www.webhostingtalk.com/showthread.php?t=1200617
- tehlike 9y agoWhat is your bw requirement?
- rocky1138 9y agoYour description doesn't include enough information. My first thoughts were to create a torrent.
- chx 9y agoWrite up more precisely of how much bandwidth, storage and CPU you need and post to https://www.lowendtalk.com/ https://www.lowendtalk.com/
- rajacombinator 9y agoIf you’re hosting something with enough bandwidth costs to be expensive, you should probably find a business model and monetize it.
- mkj 9y agoCould you use better compression?
- heipei 9y agoCan also recommend Hetzner. You've got different options. Go for a regular (or even Cloud) server and get a Storage Box on top. 5TB Storage Box would be €26/mo. You can also get a server with 2x3TB or 2x4TB for around €40-€50, either a new one or a used one from their bidding page. Good thing about Hetzner is that you don't pay extra for bandwidth, so the pricing is very easy and predictable. online.net has similar offers in a similar price-range.
- teamhappy 9y agoI recommend Hetzner too, but I want to point out that traffic is not free. When you exceed the included traffic (something like 20-50TB IIRC) your connection gets throttled unless you pay 1,2-1,4€/TB. That's a good thing though. Traffic does cost money and all those providers offering unlimited traffic will start emailing you once you generate significant amounts of traffic anyway. Edit: Just to put that into perspective (since most people here are talking about the price of the server). If you buy a affordable server for 30-40€/month and you saturate the 1gbit/s NIC 24/7 you end up paying over 450€/month. If you buy a more expensive server (75€/month, 50TB traffic included, 1,19€/TB extra traffic) you save at least 100€/month. I guess what I'm saying is worry about the price of the traffic not the price of the server. Edit2: My math is all wrong. Anyway if you need lots of traffic buy their regular servers instead of the auctioned ones, you will save money (more like 50+€/month, but still).
- xstartup 9y agoWhich block storage solution do you use on those Herzners servers? Or are you directly using file system?
- teamhappy 9y agoFile system. The prices for Hetzner's cloud seem to be the same: 20TB traffic included and 1,19€/TB on top of that. (That's super cheap by the way.)
- fredsted 9y agoOn Hetzner, it looks like the amount of free traffic is dependent on the server's monthly cost: https://wiki.hetzner.de/index.php/Traffic/en https://wiki.hetzner.de/index.php/Traffic/en
- vbezhenar 9y agoI have home connection with 300 Mb/s and server for a few hundreds of bucks. I can easily host terabytes of things. You could do the same. It's not scalable in terms of bandwidth (I could buy 1 Gb/s for few more bucks, but that's limit) or not the most reliable service (though I had 0 unexpected downtime for the last months), but might do the trick while you don't have much money and if your idea will be profitable, you could move to the cloud.
- ahofmann 9y agoHetzner has already been mentioned, I just want to add that traffic is effectively free with most German providers. Good German providers are Hosteurope, Manitu, strato, 1und1. server4you, 1blu and others are particularly cheap German providers, but I have no experience with them.
- Svenstaro 9y agoMy experience from a few years ago shows that one should stay away from strato and server4you. They only seem cheap on the surface. Goo luck if you need actual support.
- cabraca 9y agoserver4you got sold to Hosteurope, Hosteurope got sold to GoDaddy and they moved most of their servers from colonge to france, no problems so far. i would not recommend strato and 1und1, everything is fine unless its not and nobody picks up the phone no experience with manitu so far ip-projects.de - good host and good customer service netcup.eu - good host for smaller projects
- xstartup 9y agoWasabi (s3 API) + Cheap VPS caches + Cloudflare. I would switch to cloudflare paid tiers, if they still don't like you then simply remove Cloudflare from this setup. It should infact be possible to offer this as SaaS where you just need to upload api keys of wasabi, cloudflare, cloud vps providers and your media servers are ready for webscale.
- postit 9y agoI know a guy who once used one flickr pro account as a high res photo storage. He wrote a middleware to upload the photos there and used nginx as a proxy to keep links under his domain. It was clever until it lasted.
- ValentineC 9y agoThat sounds like a fine idea. What happened to it?
- z3t4 9y agoBittorrent. Or since you got lots of free time, build your own bittorrent-like client like Spotify did, so that bandwidth is spread out between clients.
- cascada 9y agoHow will Bittrorent help here?
- z3t4 9y agoHe will be able to distribute all 5+ TB of media basically for free, and it will scale infinitely. For example with Spotify, music was streaming peeer to peer instead from a central server. Spotify has however gone away from that model, probably because their bandwidth costs are dwarfed by all other expenses like fancy new offices.
- seeekr 9y agoHetzner for storage and traffic, Scaleway for serving additional traffic for free, to stretch the dollar further. At 5TB you probably don't need anything but the raw file system yet, but if you do want some redundancy you could add something like Gluster on top. I'm building out a video + image processing + CDN-like aspects solution on top of such a setup and plan to offer it as SaaS in the not too distant future. Idea is to make something a lot cheaper (order of magnitude?) than currently exists on the market -- for a lot of ideas and opportunities I come across using any of the non-budget clouds/hosting providers is just not feasible financially.
- scottybowl 9y agoSounds similar to fly.io
- seeekr 9y agofly.io is aimed at very different use cases. It is essentially a programmable CDN, and priced like a CDN, too ($0.10/GB traffic). You would not enjoy the bill for trying to serve all of your video content through it, and you also don't get disk-based storage from them, as far as I can tell. They only have memory-based caching, which could be fine for caching the hottest of the hottest of your video (or images), but for anything else paying $6 for 100MB of cache, or $60 per GB per month, would make for insane costs.
- ddorian43 9y agocheaper than vimeo ?
- seeekr 9y agoVimeo is not an appropriate solution for the use cases that I have in mind. I don't think Vimeo would be fine with serving dozens of TBs of traffic for you, or storing many TBs of video content. Vimeo is aimed at professionals and companies who use video as basically a marketing tool, or communication tool, or who produce very little but very high quality video that may be shown to lots or few people. But it's not meant to be something like a platform for you to build something like your own Vimeo/Youtube, where your users upload (lots of) video and also consume lots of it. Case in point: Their "business" offering website speaks about a total of 5 TB of max video storage that you get, and you get tools from Vimeo to manage that video manually. But if you're building a video platform then you need APIs first and foremost, as well as basically unlimited video storage, ie. pay by use or similar. But if you still want to compare apples and oranges here -- yes, cheaper, or at least comparable in price, just aimed at a different (much larger scale) use case.
- merkaloid 9y agoGet Cloudflare and aggressively cache your data. I've seem them eat dozens of TBs of data on the free plan without complaining that you're using too much bandwidth on a free plan.
- squid3 9y agoNodechef provides a lot more for startups and budgets of any size. https://nodechef.com/ https://nodechef.com/
- krewast 9y agoHow about Contabo? https://contabo.com/?show=vps https://contabo.com/?show=vps VPS XL: - Six cores - 30 GB RAM - 2000 GB Storage - 1 Gbit/s port - Unlimited traffic - 19.99 EUR/month VPS XL SSD: - Ten cores - 50 GB RAM - 1200 GB Storage - 1 Gbit/s port - Unlimited traffic - 26.99 EUR/month I'm running some personal projects on a VPS M SSD for a few years now and never had a problems. They are based in Munich, Germany. Side note: I probably wouldn't recommend them for high availability, "hard core" production stuff but if you are on a budget and just want to try something out, why not?
- tyingq 9y agoInteresting, never heard of them. Thanks for sharing...
- nwellnhof 9y agoFrom the footnotes: "Unlimited traffic: No additional costs due to traffic, you can use 100 Mbit/s without any bandwidth restrictions or throttling. (Only in case your server has a 1 Gbit/s uplink: If average traffic consumption continuously exceeds 100 Mbit/s over a timespan of at least 9 days the connection is switched to 100 Mbit/s)." An average of 100 Mbit/s means ~32 TB/month.
- simonpure 9y agoI'd also consider serving the files from your broadband connection and use various caching techniques to limit hitting your home server such as IPFS, Cloudflair, browser caching and other p2p approaches. Alternatively, if it's video, you could also upload it to YouTube as unlisted and serve it embedded in your page. We could provide better recommendations if you share more details what the type of data is and how it's intended to be used.
- LifeLiverTransp 9y agohttps://www.quora.com/Can-P2P-real-time-streaming-video-be-successful https://www.quora.com/Can-P2P-real-time-streaming-video-be-s... Make your users your servers..