2 ms·
There is a middle ground, which I have done for hobby sites that sometimes get popular by mistake. I set up dozens of caching reverse proxies, distributed on a
by LinuxBender 8y ago
There is a middle ground, which I have done for hobby sites that sometimes get popular by mistake.
I set up dozens of caching reverse proxies, distributed on a few VPS providers. Each VM then uses strongswan to route to my primary origin servers. In some cases, there is no extra bandwidth cost, if the caching VM's happen to be in the same datacenter as the origin servers, as I can use the private interfaces for my strongswan traffic.
If I want to poorly mimic the geographic DNS behavior of CDN's, I can use split views in DNS to very roughly send people to a closer caching proxy. It isn't perfect, but then neither are CDN's.
To take this a step further, I can use multiple domains with TLS SNI from different registrars to provide some take-down resistance.
The advantage to this model is that one CDN or VPS provider does not have control over my content.
The drawback is that I have to manage these nodes myself. Nowadays that isn't too bad, because each VPS allows for making API calls to spin up VM's with pre-built images. Ansible also allows for adding new nodes dynamically. There are community playbooks for most VPS providers.