At NetActuate, we take pride in both using and supporting open-source software projects. Unlike earlier generations of computing that relied heavily on commercial software, today’s internet is powered largely by open-source projects, enhanced by global talent. This shift has enabled greater innovation, scalability, and reliability. One such project we are proud to support is Varnish Cache, a highly successful open-source load balancing software that has become integral to many online services.

NetActuate’s commitment to Open Source

NetActuate supports many open-source projects, recognizing their crucial role in driving technological advancement and fostering community-driven development. Our founders got their start in internet infrastructure largely due to opportunities available to start working with open-source software and interacting with their communities.  NetActuate’s support for Varnish Cache is an example of our continued dedication to empowering projects that enhance the digital landscape.

The Varnish Cache project

Varnish Cache is a unique open-source project, not focused on adding endless features but on empowering users to implement their own. This approach stems from the early realization by the project’s founder that a never-ending list of features would be unsustainable. Instead, Varnish was given a Domain Specific Language (DSL), known as VCL (Varnish Configuration Language). This enables users to tailor Varnish to their specific needs with minimal lines of code.

For instance:

  • Redirecting traffic from specific sources (e.g., CNN.com) to dedicated pages can be achieved with just a few lines of VCL.
  • Implementing A/B testing for different language browsers is similarly straightforward
  • A/B testing German language browsers?  Sure: 8 lines of VCL.

This flexibility and control over HTTP traffic handling are key reasons why Varnish is beloved by its users. Additionally, Varnish’s efficiency in caching content reduces the need for repetitive content generation, thereby improving the overall efficiency of operations and infrastructure spend.

Craftsmanship and performance

From its inception, Varnish has prioritized quality, reliability, efficiency, and performance. The project boasts a remarkably low number of Common Vulnerabilities and Exposures (CVEs) and employs a defensive coding style with extensive use of assertions. Continuous integration and rigorous testing ensure that over 90% of the code is covered by nearly a thousand test cases. This meticulous approach contributes to Varnish’s high performance, with a lean codebase of just 180,000 lines.

By focusing on being a versatile tool-chest rather than just a tool, Varnish handles a significant portion of global HTTP traffic, proving its robustness and scalability.

Powering global Anycast deployments

NetActuate’s success in powering global anycast deployments ties seamlessly with Varnish’s popular use as an edge cache. Our infrastructure enables rapid, reliable content delivery worldwide, ensuring that services running on Varnish Cache benefit from our robust and extensive network.

A Varnish Cache + NetActuate success story

We are honored to host the Varnish Cache project on our infrastructure, providing the stability and performance necessary for such a critical component of the internet. The feedback from Varnish’s author underscores the mutual benefits of this partnership, highlighting how our smallest VM efficiently supports this remarkable project.

At NetActuate, we look forward to continuing our support for Varnish Cache and other open-source projects that drive the internet forward. Together, we are building a more connected, efficient, and innovative digital future.

The Varnish Cache Project:

Varnish Cache is a popular open-source software for building internet-scale services, supporting many large-scale websites and e-commerce applications.   Notable users include Cloudflare, Fastly, and Rackspace, all of which leverage Varnish to improve their content delivery and caching capabilities. Additionally, Varnish is integrated into platforms like Magento to provide faster load times for e-commerce sites.

This is what Poul-Henning Kamp, a UNIX guru (check out his website here) and the lead developer has to say about the Varnish project :

“The Varnish project is not really in the business of adding features, we’re in the business of making it easier for users to implement features themselves.

During the very first days of the project, the instigator of the project came up with a long laundry-list of features he wanted.  I looked at his list and thought “That’s just never going to stop…”

So instead of giving Varnish a lot of features, general and obscure, I gave it a DSL, a Domain Specific programming Language, so that the users could do what they wanted, without me getting involved.

Want to direct all users who arrived via a link on CNN.com to a dedicated webpage? Go for it!  That takes just three to five lines of VCL code.

A/B testing German language browsers?  Sure: 8 lines of VCL.

And so on.

Varnish gives un-rivalled control over how HTTP traffic is handled, and users really LOVE that.  Another reason Varnish is popular is because caching content requires much less energy than producing the same content repeatedly, that saves power, cooling & CO2.

When you load your VCL code, Varnish compiles it to C source code, runs that through the C compiler and loads the resulting shared library, so the VCL code runs very fast and switching between the VCL programs you have loaded is instant.

In terms of “craft” from day one we made quality, reliability, efficiency and performance our top priorities.

Since 2006 we have only had 18 CVEs in total and only one of them was really bad.

Our general approach is a very defensive coding style, one in ten source lines are ‘asserts’ which document to both programmer and compiler what the situation is supposed to be at this point.

We also did “Continuous Integration” before it was “invented”: Almost thousand test-cases cover more than 90% of all code lines in Varnish, and the test-tool we wrote is now also used by the HAProxy project to test their software.

And there’s not that many source lines in Varnish to begin with: only 180 thousand, which is a big reason for our high performance: Non-existent code-lines takes no time to execute.

But by focusing on being a tool-chest rather than just a tool, Varnish gets the job done, and fast:  A large fraction of all HTTP traffic goes through a Varnish instance at one point or another.

And that is also why we comfortably host the Varnish project on what I think is the tiniest VM NetActuate offers?”

Conclusion

NetActuate’s partnership with Varnish Cache exemplifies the power of tailored infrastructure in supporting open-source innovation. By delivering reliable, scalable, and efficient hosting, NetActuate ensures Varnish Cache can continue driving fast, flexible, and sustainable content delivery solutions for a global audience. Together, we’re empowering internet-scale growth and performance.