New origin cluster

swarm-diagram

We recently migrated our origin infrastructure to a much more reliable system.
From now on the jsDelivr origin is hosted on Docker swarm cluster consisting of:

  • 3 manager nodes in 3 different datacenters. All hosted by DigitalOcean. This means that even if a whole datacenter goes down we will still have full control over our cluster. And of course it will self health without any intervention.
  • 3 worker nodes that actually host our code. They are hosted in Amsterdam, Frankfurt and Paris. With Amsterdam and Frankfurt sponsored by DigitalOcean. All with plenty of resources to deal even any kind of spike in traffic.

Our cluster is using a mesh network with traffic load-balanced internally. Regardless of what location the traffic hits it could be routed internally to a completely different location if for example the local container failed to start successfully or crashed for any reason.

In addition to that we are also using an external HTTP load-balancer provided by Fastly. It uses healthchecks to monitor all of our origin nodes and load-balances all traffic evenly among them. If a node or datacenter goes down all traffic will be immediately re-routed to the remaining healthy nodes.

We also enabled an additional layer of caching. Fastly now caches all origin files and serves them to Cloudflare, MaxCDN and Quantil. If our whole cluster goes down for any reason most files will stay cached on Fastly that will continue serving them. And of course the other CDNs do the same thing, if the origin is unavailable they will continue serving files they have already cached.

This means that jsDelivr became even more reliable than before. jsDelivr was built to be used in production by even the largest websites and corporations, and we take that responsibility seriously.
Check our cool infographic to learn more about how our CDN operates.