Large Moodle downloads die prematurely when served through Varnish

Varnish and Moodle, to be blunt, hate each other. So much so that for my Moodle 1.9.x sites, I simply instruct Varnish to return(pass) without even trying to cache anything on a Moodle site. Today, however, I discovered even that is insufficient. Here’s what happened:
Continue reading ‘Large Moodle downloads die prematurely when served through Varnish’

Facebook in Prineville, a slightly different view

Oooh! Pretty blinkenlights!

On Friday, Facebook’s Senior Open Programs Manager, David Recordon, took a group of us from the OSL on a fantastic behind-the-scenes tour of the new Facebook data center in Prineville, Oregon. It was an amazing experience that prompted me to think about things I haven’t thought about in quite a few years. You see, long before I was ever a server geek I spent my summers and school holidays working as an apprentice in my family’s heating and air conditioning company. As we were walking through the data center looking at the ground-breaking server technology, I found myself thinking about terms and technologies I hadn’t considered much in years – evaporative cooling, plenums, airflow, blowers. The computing technology is fascinating and ground-breaking, but they’ve been covered exhaustively elsewhere. I’d like to spend some time talking about something a bit less sexy but equally important: how Facebook keeps all those servers from melting down from all the heat they generate.
Continue reading ‘Facebook in Prineville, a slightly different view’

Google Summer of Code 2011

I am delighted to announce that the OSU Open Source Lab has once again been selected as a mentoring organization for the Google Summer of Code. This year Google has selected 175 organizations in the open source world to act as mentors. We at the OSL are honored to be included in such a prestigious list. The GSoC program is open to college and university students worldwide, providing students with a cash stipend to fund their work over the summer on some great open source projects.

GSoC logo
Continue reading ‘Google Summer of Code 2011′

DrupalCon Chicago

Whew! What an amazing week! DrupalCon Chicago is – sadly – now past, and we’ve started looking forward to London and Denver. Now that I’ve had time to return home and get some much-needed sleep, it’s time to make note of some observations I’ve made this year.
Continue reading ‘DrupalCon Chicago’

Drupal 7 & Varnish

I thought I’d put a quick post here in the hope that I save someone a bit of frustration.

I was testing a new Drupal 7 site and I noticed that while the static files (JS, CSS, images, etc.) were all showing the proper cache lifetime, the nodes themselves were being sent back with a max-age=0, causing a reverse proxy cache miss on eminently-cacheable content. A bit of digging turned up the culprit: the mostly-hidden variable ‘page_cache_invoke_hooks’.

When running Drupal 7 behind a Varnish reverse proxy cache, make sure to include the following lines (suitably edited) in your settings.php:
Continue reading ‘Drupal 7 & Varnish’

Open Source Misogyny

We have a very large problem in the open source community: we are the epitome of a hostile misogynistic work environment.

If you’ve missed the latest example, read the comments on “A hell of a time” (cached) right now. Then come back and read the rest of this post.
Continue reading ‘Open Source Misogyny’

Google Code-In 2010

The OSU OSL has been accepted as a Google Code-In mentoring organization!

Continue reading ‘Google Code-In 2010′

Oregon Signs State-wide Google Apps for K-12 Agreement

This is very exciting! Oregon has become the first state in the nation to sign an agreement with Google to provide Google Apps for Education to the entire public school system:

Since the project is being managed through the Oregon Virtual School District structure, things got very busy here at ORVSD tech central. We’re seeing quite a bit of interest from national press as well as school districts in Oregon. I’m glad to see some good news for educators out there when most of what we hear is about schools’ increasing enrollment and decreasing funding.

Varnish config – default.vcl

I’ve received some requests for a copy of my Varnish config. I’ll post it here with the following caveats:

  1. This is very much a work in progress. There may be some show-stopping bugs that could really mess up your users. Your milage may vary. Use with caution. I make no guarantees or warranties. Do not use this as-is on production site – you will need to modify it to work properly on your own site.
  2. Much of the configuration is specific to my infrastructure. Huge chunks of it are assuredly not appropriate for your own site. Do not use this as-is on production site – you will need to modify it to work properly on your own site.
  3. Do not use this as-is on production site – you will need to modify it to work properly on your own site. (Are you sensing a theme here?)

Continue reading ‘Varnish config – default.vcl’

Varnish Drupal module first impressions

Yesterday I took the plunge and installed Josh Koenig‘s Varnish module on two of my larger production sites. So far, I’m very happy. It’s worked well. More importantly, it’s allowed me to greatly increase the max cache lifetime (and therefore cache hit rate) on the site, reducing the overall load on the system.
Continue reading ‘Varnish Drupal module first impressions’