Cloudflare, the content delivery network and website security company that launched at TechCrunch Disrupt San Francisco in 2010, just announced that the majority of the world’s leading web hosting providers now support itsRailgun web optimization protocol to provide advanced caching services and to improve their web performance. Railgun, Cloudflare’s tests show, can optimize dynamic content to improve load times by an average of 143% and reduce bandwidth usage by close to 50%.
Unless you have been following the development of Cloudflare closely, Railgun is probably not on your radar yet. As Cloudflare CEO Matthew Prince told me last week, Cloudflare now has a presence in 23 data centers around the world so it can serve the data it caches to users as quickly as possible. It will likely add 50 more locations over the course of 2013. As it gets closer to its users, however, the company noticed that its servers are now often pretty far away from where the data originates, so speeding up the data delivery between the origin server and Cloudflare’s servers became a priority.
HOW RAILGUN WORKS
That’s where Railgun comes in. While regular caching services focus on objects like images, HTML, CCS and JavaScript files, Railgun takes a byte-level approach to caching based on delta compression technology. This basically works a bit like video compression, where the encoding technology focused on the differences between frames. Railgun, too, looks at files at the byte-level and then just transfers the actual bytes that have changed instead of the complete file. Because large parts of the web are not based on static files anymore, this kind of low-level approach means even highly dynamic sites can profit from this technology. Close to 40% of the data on the average site today is not dynamic, according to Cloudflare.
“To further improve the performance of an increasingly dynamic, API-driven Internet we needed to reinvent some of its 23-year-old protocols. Railgun goes beyond what traditional performance boosting technology has provided, making even highly dynamic content load faster than ever before,” Prince said in a canned statement today. As he told me last week, having fewer packets travel between the origin server and Cloudflare’s data centers also reduces the amount of overhead and lost packets.
PARTNERS
Among Cloudflare’s Railgun partners are (in alphabetic order 040hosting, A2 Hosting, Arvixe, Bluehost, ByetHost, CoreCommerce, DreamHost, ELServer, FastDomain, GreenGeeks, HostPapa, HostMonster, Just Host, InterServer, MapleTime, (mt) Media Temple, MDDHosting, NameCheap, PacificHost, PRO ISP, SiteGround, Sliqua Enterprise Hosting, Softcloud Hosting, SparkRed, VentraIP, VEXXHOST, WebHostingBuzz, WebHostingPad, x10Hosting and Zuver.
For these hosts’ customers, enabling Railgun is simply a matter of pushing one button. The system will take care of configuring the DNS settings for Cloudflare. Some hosts may charge for the service, but most are making it available for free. Cloudflare itself doesn’t charge the hosts anything for using the service and it does, of course, also provide its usual security features and other optimization tools to their customers.
Cloudflare is also making packages for Rackspace and Amazon Web Services customers available that make installing Railgun as easy as possible for them.
As Prince noted when I talked to him last week, most web hosts are essentially still regional players (think Media Temple in the U.S. or 1&1 in Europe), as businesses tend to choose hosts that have data centers in physical proximity to the majority of their customers. Cloudflare’s Railgun now allows virtually every web host to have something akin to a global presence because the actual physical location of their data centers now matters less than where Cloudflare’s servers are located.
One of Cloudflare’s partners in testing Railgun over the last few months was Imgur, the massively popular photo hosting site. As Imgur founder and CEO Alan Schaaf told me, “speed is an important feature at Imgur, and the entire site is designed to run as fast as possible. We’re really excited to use Railgun to take it even further. Not only has it helped speed up the delivery of our HTML content so far, it’s saving us 50% on our HTML bandwidth.”
Another early user, Luxury Link, also told us that it saw a 40% improvement in load times of its site from the East Coast and a 2x improvement from London.
WRITTEN IN GO
Interestingly, Prince told me, his team wrote the majority of Railgun in Go, Google’s nascent programming language. In the process of working on the technology, the team noticed that some of the built-in Go encryption functions were still slow, so it improved these and gave them back to the Go community. Go, Prince told me, is very good for building highly efficient code and the company is planning to continue to use it for other projects (and is actively hiring Go programmers, too).
Looking ahead, Prince told me that the company is thinking about putting its servers even closer to users by working with ISPs, similar to what Netflix and large CDN’s like Akamai are doing.