<?xml version="1.0" encoding="utf-8"?>
<feed xml:lang="en-us" xmlns="http://www.w3.org/2005/Atom"><title>Simon Willison's Weblog: ernie</title><link href="http://simonwillison.net/" rel="alternate"/><link href="http://simonwillison.net/tags/ernie.atom" rel="self"/><id>http://simonwillison.net/</id><updated>2009-10-21T21:14:38+00:00</updated><author><name>Simon Willison</name></author><entry><title>How We Made GitHub Fast</title><link href="https://simonwillison.net/2009/Oct/21/github/#atom-tag" rel="alternate"/><published>2009-10-21T21:14:38+00:00</published><updated>2009-10-21T21:14:38+00:00</updated><id>https://simonwillison.net/2009/Oct/21/github/#atom-tag</id><summary type="html">
    
&lt;p&gt;&lt;strong&gt;&lt;a href="http://github.com/blog/530-how-we-made-github-fast"&gt;How We Made GitHub Fast&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;
Detailed overview of the new GitHub architecture. It’s a lot more complicated than I would have expected—lots of moving parts are involved in ensuring they can scale horizontally when they need to. Interesting components include nginx, Unicorn, Rails, DRBD, HAProxy, Redis, Erlang, memcached, SSH, git and a bunch of interesting new open source projects produced by the GitHub team such as BERT/Ernie and ProxyMachine.


    &lt;p&gt;Tags: &lt;a href="https://simonwillison.net/tags/drbd"&gt;drbd&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/erlang"&gt;erlang&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/ernie"&gt;ernie&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/git"&gt;git&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/github"&gt;github&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/haproxy"&gt;haproxy&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/memcached"&gt;memcached&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/nginx"&gt;nginx&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/proxymachine"&gt;proxymachine&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/rails"&gt;rails&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/redis"&gt;redis&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/replication"&gt;replication&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/ruby"&gt;ruby&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/scaling"&gt;scaling&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/ssh"&gt;ssh&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/unicorn"&gt;unicorn&lt;/a&gt;&lt;/p&gt;



</summary><category term="drbd"/><category term="erlang"/><category term="ernie"/><category term="git"/><category term="github"/><category term="haproxy"/><category term="memcached"/><category term="nginx"/><category term="proxymachine"/><category term="rails"/><category term="redis"/><category term="replication"/><category term="ruby"/><category term="scaling"/><category term="ssh"/><category term="unicorn"/></entry></feed>