By jesusphreak on
I think one of my main concerns as far as creating a site goes is how fast the site runs. I mean, features are great, but if load times are over a second for a page, I get a bit turned off. Geeklog was kind of like this. Some sites will render in 0.15 seconds, some will take 1.3 seconds. It was just really inconsistent, and it bothered me.
So how fast is Drupal? Drupal.org seems kind of slow, but I'm assuming thats more a result of the server than the software.
So if anyone can answer my question with any data or a link to a fast Drupal site or any kind of comment at all, I'd appreciate it.
Thanks!
Comments
What is a page?
I have found the performance of Drupal on a "good" severer to be pretty good. On the other hand I have one client on a provider that is clearly not up to the task and I am trying to convince them to change providers, mind you they can be slow at serving static pages also.
The time a page takes to load depends on several factors, network "speed", the machine hosting the site and the mix of content on a "page". The first you have no real control over and while you can pick your host even good ones become overloaded at times. The network and host can play havoc on the best of solutions and are fact of how the internet works.
What you control is the content of the page through your page template and the modules you choose to use. So a template that uses little graphics and content that is only text will load faster than one with lots of graphics showing an image gallery.
Now if you really think anything over a second is to slow, Drupal will meet your goal given you have a good host and keep graphics to a minimum. But it can be close. On the other hand one of the few solutions that will generally faster is static (hand coded html) pages. But the maintance time on those can be a killer.
Well, considering that
Well, considering that Drupal caches "static" pages, its probably one of the more efficient CMSs with this many features.
Up. Just hoping for a few
Up. Just hoping for a few more comments.
Only if you enable it
I know it may seem like an obvious thing to say, but Drupal doesn't cache by default, so if you are expecting high load you probably should turn that on. ;)
To deal with load-spike situations (where for a brief time you get many more hits than usual) there is the throttle module, that can disable certain blocks/features/etc depending on load (the idea being that you disable the ones that provide minor benefits but require relatively big db searches, like 'most recently commented-on nodes' or similar). Helps if you get slashdotted.
consider using a php accelerator
when I first started looking at drupal, efficiency was one of my main concerns. If drupal's not able to be made to handle a high load then I'd rather put my time into learning a different platform, since some of my current sites handle high load already, and I'm expecting others to handle high load in future.
I did some initial testing on an old P3-500mhz machine. absolutely basic pages - standard install, posted a page, and ran apache's ab against it with about 100 page fetches and a concurrency of 10. Initially I was getting 2 pages per second, which is knowhere near adequate.
I turned on drupal's output caching and added a php accelerator. It's a while ago, and I'm not sure which one I used. mm-cache and php-accelerator both seem to be well thought of, and I imagine it was one of those.
That took me to about 20 pages per second on old hardware, which is pretty good - quite enough that I'm not going to have to worry about it in the short term.
It's worth noting that load is going to look a bit different with a full database. queries are going to take longer, and involve more disk io. That said, output caching is going to take care of most of that for sites which are read mostly by large numbers of users who are not logged in.
Its also worth noting that running a php accelerator is a trade off between speed and memory use. It's probably not an option on a virtual server account, and is at its best on a machine with a fair bit of ram.
Ok, good stuff.What about
Ok, good stuff.
What about pure-load speed. I mean, with 0 users on my little site that I have on a server for tests, Drupal seems to take at least a second from me hitting enter to me loading. I noticed that WordPress sites, for example, will load in very very fast amounts of time - like 1/4 second.
I also noticed that searching through every single Drupal site they have listed on the main page here, that all of them seemed to have the same problem - load times over about a second, even for the small sites.
Is this a Drupal related problem or just bad hosts? It just seems slow compared to other CMS systems, even though I've seen others claim that its fast.
Anyway, thanks. :)
Its worth noting that I REALLY want to use Drupal, its just that speed is a concern. When I load my Invision Power Board on my server, its literally click, and then the page loads VERY fast. Drupal its like click.....loaded.
Okay, searching through
Okay, searching through "Sites that use Drupal", probably 80% of the sites there take longer than a second or more to load, probably 50% take longer than 3-5 seconds.
I'm on DSL.
I did come across a few sites that loaded incredibly well, and very fast, and that do more than well enough for me:
http://www.captg.com/
http://www.brainshrub.com/
Is there something that they are doing different?
I use OpenSourceHost.com
I'm the owner of brainshrub.com. OpenSourceHost has been wonderful. The service is spot-on and I have yet to have a problem with their servers.
For the record, I do not work for them. I'm just a very satisfied customer.
It took even longer for me.
Well, don't be too picky. Drupal.org runs on Drupal, too, and very recently, I clicked on a link... and the page took 96 hours to load... During those few days, I would have been content with 3-5 seconds.
;-)
--
http://www.reuniting.info/
Healing with Sexual Relationships.
Not Drupal sites!
It may have changed in the past little bit (since 2005...)
But http://www.captg.com/ is now using Wordpress
And http://www.brainshrub.com/ is an ugly Joomla website
So if you are reading this post, remember that things change over time. 8-)
the need for speed
Measuring website's speed is a business by its own.... and yet it is something everybody does every day. However if you want to get some real data instead of "it is slow" or "less than one second" you have to be open in what you meausere and how.
Basically you have three elements than can be the bottleneck, the client(s), the network(s) and the webhost(s). First make sure that neither the network or the client will be the bottleneck, think lots of fast clients and GBethernet. Than you have to know what you are measuring, will you need to log in to the website? Are DNS lookups included? Include all stylesheets and all images? Do you want to know how fast a page is rendered or how fast the page is rendered with the maximum number of expected clients during top hours? You can do some basic test with this with ab, a standard apache Benchmark tool. Better tooling is available, both in OSS and closed source. Than you need to optimize the server.
Will you loadbalance the webserver, make a three tier solution? Did you optimize the webserver and the database server? If all of this has been handeld you can do your test. But once again, what will you be measuring? Throughput? Load, render time of one page? Sessions? Than when you have two identical setups with the same page size, the same hardware, than you might complain that drupal is slow compared to other engines ;-)
In the mean time, having experience with closed and several opensource software engines, I can ensure you that the drupal software is very fast. :-)
But focus on optimizing the TCP/IP stack, apache, mysql and PHP accelerators will give you a giant boost. Try it. It did wonders for my site (I host at a 10 year old pentium 166 at home)
--
groets
bertb
--
groets
bert boerland
Well, after doing a bit more
Well, after doing a bit more scanning, I've come across numerous sites that are blazing fast. I'm very impressed.
I can only imagine that they just are using good servers - and I don't think its necessarily bandwidth that's an issue, but actual hardware.
Is there anything in particular that I should look for when searching around for Drupal hosting?
phpaccelerators
if you would go for one thing, than let is be php accelerators. turk cache (now dead) or others.
--
groets
bertb
--
groets
bert boerland
eaccelerator
Check out eaccelerator at
http://eaccelerator.net/HomeUk
it's the continuation of Turckmmcache (now dead). It seems to be the best current php acceleration solution...
Tutorial
Bert
You said:
It would be great if you can prepare a mini-HOWTO for this, with relevant links, and post it in the handbook. This way, people would have a handy quick reference.
If you can spare the time, please consider doing so.
--
Consulting: 2bits.com
Personal: Baheyeldin.com
--
Drupal performance tuning and optimization, hosting, development, and consulting: 2bits.com, Inc. and Twitter at: @2bits
Personal blog: Ba
An Example
This site has more than 3000 people a day:
http://poemas-de-amor.net/
It's hosted on dreamhost...
Miguel Duarte
Webmaster of: Lisbon Guide & Love Poems
re: an example
What about situation when you plan your blog being visited more than 10 000 users per day ? or even 30 000 per day ?