| I have the same problem. I found that building a platform is not an issue. It's always the price. > I know, building a CDN isn't simple, but when I tried to build my own platform, it wasn't about building something about video streaming. It was about creating my own CDN to lower the costs. I don't think I'm alone with that problem. Were you successful in starting something? Did you end up creating your own CDN? Lets say someone had a platform, servers and were ready to rock: - How do they implement that CDN? - Could it be a case of getting hosting providers who offer Nth percentile or unlimited bandwidth (to a point)? I've seen these packages on webhostingtalk.com - What are the costs associated with that? - What are the gotchas with maintenance and running costs? Would love to know your thoughts. |
I was still a student at the time (2 years ago), that definitely was a big issue for me so I tried to build my own CDN. There are many things that pushed me to abandon the idea: pricing, lack of time, lack of knowledge about DevOps and/or lack of tools. I've learned a lot since then.
I had a few problems with managing the total available bandwidth as well as the monthly data cap (1TB on the cheapest DigitalOcean droplet), this could be resolved if you already have the servers running, managed and updated, but it won't resolve the scaling problem unless you possess a datacenter.
It would be pretty simple to setup a CDN with that solved: - Have your ingest servers make the files available somehow (scalable/shared filesystem? NoSQL? or just a webservice?) - Make your viewers ping your cache servers (Varnish), and if the file isn't cached, then fetch it from the ingest server. - Put a layer 4 load-balancer (also known as Direct Server Return) in front of those cache servers, and adjust the weight of each cache server since the network throughput will probably not be the same for all of the servers. - Automatize all of this so the cache servers know about the new ingest servers, same thing for the load-balancer about the new cache servers. Done!
Once all of this is set up, this is just a matter of starting new servers and doing maintenance on the other ones while keeping everything available. After that, you can focus on the second point: using the ads the finance your service and keep it running.
"I wanted to build a video platform, not a CDN! And now, I have build an advertising platform?" - I must have told myself that a thousand times back then!