How the jQuery Foundation uses DigitalOcean

“All of the DigitalOcean folks that I've spent time with have been awesome.”
Kris Borchers, Executive DirectorExecutive Director, jQuery Foundation

How the jQuery Foundation uses DigitalOcean

The challenge

The jQuery Infrastructure team provides IT services to our various projects, as well as the jQuery Foundation itself.

Much of our infrastructure exists to support a couple of primary needs: the development of the projects themselves (build servers, web servers, etc.) and the hosting of high-traffic, public-facing websites. With so many active projects it can be a real challenge for a small, mostly volunteer team to effectively manage and support a diverse number of hosts and services. As such, we are always looking for ways to further automate and simplify our systems management procedures.

In addition to supporting dev/build servers, we also host documentation websites and custom package builders. These sites get a surprisingly high amount of traffic and lately have become real DDoS magnets, making us something of a problem child to our hosting providers.

Why DigitalOcean?

To be honest, it was probably the people. All of the DigitalOcean folks that I’ve spent time with have been awesome. They are real-deal open source folks and that means a lot to me.

Secondly, DigitalOcean had some cool features that really appealed to us: SSDs to keep the servers fast, and an API from which we can easily provision and manage our droplets. These two features really “make it” for us.

The architectural details

Our cloud usage is fairly straightforward. As mentioned previously, we have a number of servers with fairly unique roles and generally don’t have a lot of redundancy. We use Debian for our distro and Puppet for configuration management, and we strive to ensure every server can be rebuilt and re-deployed quickly.

However, things happen, and for key services, it’s really important that we minimize the amount of time that we are down. We have traditionally kept hot spares running and ready for provisioning, allowing us to redeploy most servers in well under an hour, even with a fair number of manual steps. We hope to reduce this time even further by leveraging snapshots and the DigitalOcean API. It would be way nicer to just run a script and be done with it.

jQuery + DigitalOcean

DigitalOcean is a fairly new hosting provider for jQuery Foundation and while some of us had personal hosting with DO, nobody had experience with “real” servers.

We are naturally inquisitive folks and curious about the service, so we took one of our smaller traffic WordPress servers and moved it to DigitalOcean. We gave Mikeal at DO a heads-up, warning him that we were going to “bring the interwebs,” but he laughed and didn’t care. He said our bandwidth needs were comical and I was being a baby. He was right, there was no issue, so we moved another server and it was fine too. This meant we had another viable location for hosting our services – very cool!

Fairly recently one of our high-traffic web sites was defaced and we needed to build a replacement server. This particular host gets 10x more traffic than the two servers we already had with DO and has been entirely trouble-free. Additionally, before we had Cloudflare, this server was DDoS’d pretty hard more than once, but kept on truckin’.

Ultimately, DigitalOcean gives us more flexibility and an easy way to automate various parts of our infrastructure, helping us move forward and do more with less effort.

Start building with DigitalOcean!

Sign up now and you'll be up and running on DigitalOcean in just minutes.

Try DigitalOcean

Start building today

Sign up now and you'll be up and running on DigitalOcean in just minutes.