October 21 to 23, 2011

UC Berkeley, California

A culmination of the brightest Drupal minds in the technology hub of the world


Outsource Drupal Permission check to Varnish

One of the biggest challenges regarding Drupal and Performance is having a big amount of logged in concurrent users using your system. There are already some universal techniques that are considered best practice to be done if you have such cases, but there are also techniques that are more specific.

A client recently requested from us to make a project where at specific hours a lot of students should be able to log in and check their online materials, materials also restricted based on role permissions. The big number of concurrent users expected at specific moments forced us to think out of the box and made us solve the challenge in an intriguing way that I would like to share.

In this session / showcase I will:

- Show you a different approach of outsourcing work (in this case permission check) from Drupal to Varnish in order to deal with the big number of concurrent users.
This includes presentation of custom module that extends panels and adds additional caching interface based on permissions, specific use of Varnish ESI and configuration + the way of thinking we had in building these.

- Share the problems we had during building this custom caching solution and the way we solved them. I will also explain in detail what Edge Side Includes in Varnish are, why we needed them and the specific way we used them in this case.

- Expect feedback and eventually ideas of how we can extend this, wrap it up and contribute/share to the community.

This session requires knowledge of both how Varnish and Drupal caching works.