Archive for the 'planetosl' Category

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’

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’

Varnish: lookup at the end of vcl_recv

Ah, the beauty of hindsight. Things are so clear.

Last night I was working on optimizing my Varnish config. My cache hit rates have been lower than I wanted, so I was going through some of the examples on the Varnish wiki – especially this one. Here’s what I had in my vcl_recv:
Continue reading ‘Varnish: lookup at the end of vcl_recv’

Pressflow 6.14.64 and Authcache

I’ve been playing with the Authcache module the past couple of days. So far I’m very impressed.

I ran some Funkload tests with 1, 25, 50, and 100 concurrent clients to see how it does.
Continue reading ‘Pressflow 6.14.64 and Authcache’

vcl_hash

I’ve been trying to figure out the effect of this line in my Varnish config:

sub vcl_hash { if (req.http.Cookie) { set req.hash += req.http.Cookie; } }

It seemed to make sense, but I was having a hard time wrapping my head around its ramifications. I was looking at some of the docs on the Varnish site and at this great Varnish config walkthrough when the metaphorical lightbulb went on. By adding the cookie to the hash it’s effectively creating a per-session cache.

Hmm. An interesting tradeoff. On one hand it’s filling up my available cache with duplicate copies of the same content because the hash identifying the cached content is cookie-specific. On the other, it is delivering content from cache that wouldn’t normally be cached because of the cookie.

High performance Varnish/Pressflow/Drupal community of practice

At DrupalCamp PDX this weekend, I was fortunate enough to have some very interesting (if tantalizingly-brief) discussions with Josh Koenig (joshk), Sam Boyer (sdboyer) and Damien Tournoud around sharing configs and best practices for scaling Drupal sites, especially using Varnish and Pressflow. OK. We’ve talked about it. Now let’s do it!

I see three primary places we might start building on that seed:

Those of you out there running Drupal in large scale environments, let’s start sharing configs and techniques so we can all do better.

Pressflow, Varnish and Caching … oh my!

It all started with an itch. It was a really painful itch that involved a Drupal site that was essentially down due to load. I scratched it with the help of a few incredibly helpful blog posts I found, so now it’s my turn to add to them so someone else can benefit as well.

The Problem:

HALP! The site, it is sinking!
HALP! The site, it is sinking!

A large school district wanted to replace their existing outdated static web site with a modern CMS. They chose Drupal as their platform. The new site was successful.

Too successful.

The average traffic of 5 hits/sec jumped to over 100 hits/sec and the server went into a swap death spiral.

Fear not! Help is on the way in to form of a couple of technological superheroes …

Pressflow and Varnish - Technology superheroes
Pressflow and Varnish to the rescue!

The mutually-complimentary combination of these two tools can vastly increase the number of users your site can serve. Here’s the what, why, and how:
Continue reading ‘Pressflow, Varnish and Caching … oh my!’