3

I would like to find out from anyone that has built a high traffic Drupal community website ( a website with at least 500,000 visitors a month, with anywhere from 10,000 to 20,000 authenticated users at any one time ), is it is possible to create this kind of site without having to do a high level of hacking to make Drupal scale? Can standard Drupal scale without a lot of query and other types of hacking / coding?

Can I install Drupal, configure the modules I need, and then add more hardware and functionality (APC, Varnish, Memcache, etc) without having to do query hacking? How do people deal with Drupal's high number of database queries without hacking, or is there no way around having to hack? If you have built this type of community site with numerous authenticated user, what were the biggest hurdles and stumbling blocks when it comes to performance and scalability? I already know about auth cache and pressflow.

  • Hello, and welcome to DA :) Unfortunately, "500'000 visitors a month", as well as all similar "metrics", will mean wildly different things on different websites. Other than saying "In theory it's possible", there is absolutely no way of giving an answer that won't be specific to exactly your site. I suggest this question be closed. – Letharion Jul 20 '12 at 17:30
  • I think this is ood question to collect in answers all modules that can be used to spedd up high-loaded Drupal sites. – Eugene Fidelin Jul 20 '12 at 18:02
12

Drupal can serve high-load sites without hacking.

You need to use memcache to store Drupal caches not in db but in memory. For Drupal 6 you need to use Pressflow core. You need to use Drupal cache mechanism, its configuration much depends on what users do you have most - anonymous or authenticated.

For anonymous users Varnish can dramatically increase site performance.

Don't forget to configure cache for each View and Panel on you site.

Also Drupal 7 can work with MySQL's master-slave architecture.

Don't forget to use cdn for loading static content such as images, css, js and files uploaded by users.

If you will have search on your site - I advise you to use Apache Solr.

I have created several high-loaded sites and haven't hacked any query that was provided by Drupal core. In some cases only queries that were provided by views module were altered - but this is not a hack.

But don't think you can built a high-load Drupal site without deep knowledge of Drupal architecture, API and lot of useful modules.

  • 2
    All good points Eugene! I'd like to add that for authenticated users you can use block/views/panels cache to cache rendered output by section of the page. And the ESI project could be useful depending on your understanding/requirements drupal.org/project/esi Also the session table may be a pain point, if you don't need to persist sessions indefinitely you could put sessions into memcache. I've also just begun looking at putting sessions in a separate mongodb but can't report on whether that is actually good at the moment – joevallender Aug 16 '12 at 8:59
  • @Eugene: what kind of traffic do your high-loaded sites get? are they community-driven ones? My client wants a website similar to stackoverflow(questions with answers with upvote/downvote and huge userbase with reputation points etc..); have you ever built sites like this; can drupal 7 handle it and scales well?? – yeahman Mar 16 '14 at 19:25
  • @yeahman, yes i also have experience with creating high-traffic community-driven websites using Drupal. My short answer will be "yes, you can use Drupal 7 for that". – Eugene Fidelin Mar 17 '14 at 10:21
  • may I ask you what websites so that I can take look? what volume of visits, users and content have you dealt with? – yeahman Mar 17 '14 at 19:11
  • sorry, this information is under nda, if you need consultation - contact me privately – Eugene Fidelin Mar 18 '14 at 16:49
0

Yes, you can scale Drupal to 6.7 billion static page views per month, or to 220 million highly dynamic authenticated page views per month in a secure and resilient production system.

This is transparent PHP/Drupal scaling that does not require deep knowledge of Drupal architecture.

http://jkmickelson.net/books/drupalee-drupal-enterprise-edition-drupal-6

Not the answer you're looking for? Browse other questions tagged or ask your own question.