The session that I proposed for DrupalCon San Francisco 2010 on 2.4 million page views per day, 60 million pages per month, one server was accepted, and I just finished giving it.

Note that from the time we proposed the talk, until we actually delivered it, the site hit new records (2.8 million page views per day, 70 million page views per month).

Here are the slides from the session, which I designed to be useful on their own, even for those who did not attend.

And the video of the slideshow, with the sound track, is now uploaded to Archive.org, and you can watch it at this link.

Comments

Wed, 2010/04/21 - 11:51

Good stuff, thanks. So all MYISAM tables except the three you listed which are INNODB? (users, sessions, votingapi_vote)

Wed, 2010/04/21 - 11:59

For this particular site, yes: those are the only ones that are InnoDB, all the other tables are MyISAM.

For other sites, more tables need to be InnoDB, for example, another site had the following:

comments
node
node_comment_statistics
node_counter
sessions
term_node
url_alias
users

Wed, 2010/04/21 - 15:33

Why do you to plan to use Varnish instead of nginx as frontend reverse proxy? And more important, why didn't you plan to use that at the beginning?

About the website, is its layout complex? I can read from your graphs that each page uses 100 KB in average, not much for an "entertainment" website.

Well, a small Drupal site is fast, and scalable. But a large one is totally different. Great work and thank you.

Wed, 2010/04/21 - 16:11

We did not plan to use Varnish from the beginning simply because it is not needed. We still do not need it at present, but we will be ready with it when it is.

For nginx (and lighttpd, ...etc.), we basically like to stay with the version that is in the repository of the distro we are using, to make upgrades simple, and minimal. The nginx version in Ubuntu 8.04 LTS is old. Perhaps 10.04 will have a better version. So we don't compile things from source unless there is no other way. Simplicity is the key here.

The layout is based on Marinelli, with one column on the right hand side, and a main content column. No panels or anything like that. The front page size is around 200K.

Wed, 2010/04/21 - 21:44

I was wondering what the performance hit is for using CCK vs. creating a custom module. Did you go with a custom module simply to help reduce the number of total modules needed, or does CCK slow down a high-traffic Drupal site that much?

Thanks,
Jason

Wed, 2010/04/21 - 23:28

The main goal was simplicity, which leads to maintainability. This means less stuff to keep up to date, less stuff to worry about when upgrading the site. Also, less code to load for each page request and less hooks firing.

It was not an "Aha! that is what is making the site slow", rather an example of how to simplify: for 3 fields for one content type, it was not worth having so many modules around.

Fri, 2010/08/06 - 11:08

As I commented on the Lullabot podcast, the figures have increased over the summer. They are:

Peak daily numbers:
3.42 million page views per day
839.9K visits per day

Monthly figures:
92.4 million page views per month.
22.8 million visits per month.

Most days are above 3 million page views, and the lowest traffic day over the last 30 days is 2.7 million.

Still on the single server that I presented back in April, and doing well.

Tue, 2010/08/31 - 09:36

Works for me, and I am on Linux. You are the only one who reported a problem. Must be something on your end.

Pages

Is your Drupal or Backdrop CMS site slow?
Is it suffering from server resources shortages?
Is it experiencing outages?
Contact us for Drupal or Backdrop CMS Performance Optimization and Tuning Consulting