performance

Teach Varnish to write letters

We've had people typing response letters for quite a while, but it's slow and costly, and the only difference in the letters is the greeting by name. We also can't change it to an impersonal response like "Dear Customer".

So how can we make this more efficient? Let's make lots of copies of the letter without the name, leaving a hole in it's place. Then when we get a request we'll use a special process

Drupal scalability, Part 3

We were finally able to upgrade the database server disks last September before the frenzy of PCI compliance consumed everyone's spare cycles. The old configuration was a three disk RAID 5 array, new configuration is a six disk RAID 10 array using 15k RPM disks. I finally got to write a TPS report:

OLD: 90-100 TPS
NEW: 400-415 TPS sustained, ~800 TPS peak
===

So we're at about 400 writes per second, up from 90. To make fair comparisons I stuck with the same simple tests with ApacheBench.

Drupal scalability, Part 2

This is a follow up to a writeup I did last year. Read the previous article about Drupal scalability for the back story. In five months nearly nothing has changed in the production environment at work. What has changed is my understanding of disk performance, as it relates to databases, and the power of higher level caching.

I couple months ago I spent many hours looking at disk stats in Linux with the iostat utility. How many writes per second can a three disk RAID 5 array do?

How many disks does it take to screw in a database?

My previous experience with optimizing disk performance in Linux revolved around getting huge chunks of data off disk quickly, but this means nothing to a typical database. Databases are usually limited by how many IOPS (Input/Output Operations Per Second) the disk subsystem can sustain. The database servers at work have plenty of RAM so disk reads nearly always come from the disk cache and disk writes appear to be our bottleneck.

The database servers each have a RAID 5 array with three 10k RPM drives, while the web servers each have mirrored 15k RPM drives. all SAS.

Drupal scalability

The company I work for currently runs numerous Drupal websites, which are now beginning to experience performance issues. The hardware in the production environment "seems" adequate, but nobody really knows what the problem is or how to address it. The camel's straw, as far as acceptable performance, seems to be the last website we put into production, which shares this same server infrastructure.