Posts by

GitHub Engineering


Vulcanizer: a library for operating Elasticsearch

Vulcanizer is a Go library for interacting with an Elasticsearch cluster. Its goal is to provide a high-level API to help with common tasks associated with operating an Elasticsearch cluster such as querying health status of the cluster, migrating data off of nodes, updating cluster settings, and more.

Mitigating replication lag and reducing read load with freno

At GitHub, we use MySQL as the main database technology backing our services. We run classic MySQL master-replica setups, where writes go to the master, and replicas replay master's changes asynchronously. To be able to serve our traffic we read data from the MySQL replicas.

Integrating Git in Atom

Perform common Git operations without leaving the editor: stage changes, make commits, create and switch branches, resolve merge conflicts, and more.

Introducing the GitHub Load Balancer

Over the last year we've developed our new load balancer, called GLB (GitHub Load Balancer). Today, and over the next few weeks, we will be sharing the design and releasing its components as open source software.

The GitHub GraphQL API

GitHub announced a public API one month after the site launched. We've evolved this platform through three versions, adhering to RFC standards and embracing new design patterns to provide a clear and consistent interface.

Revamping GitHub’s Subversion Bridge

One of GitHub's niche features is the ability to access a Git repository on GitHub using Subversion clients. Last year we re-architected a large portion of the Subversion bridge to work with our changing infrastructure.