Good performace on shared hosting?

Events happening in the community are now at Drupal community events on www.drupal.org.
Kristina Katalinic's picture

Hi guys,
I figured this is probably the best place to discuss Drupal 7 performance for sites in shared hosting environment.

I installed a D7 site on godaddy servers the other day and am puzzled with my page load times. Most significantly it seems that latency is the biggest problem but as I am not necessarily the most knowledgeable on that subject I'd like to get some opinions from other members.

I did all I could to improve my site and it scores 95 with page speed and 91 with Yslow. One would expect a pretty fast site with those scores right? But page load speeds are rather on the slow side.

Its a pretty "slim" installation with only additions to bare-bones being custom theme, imagecache, semantic fields, pathauto,boost,CSS Embedded Images, entity cache...

The total weight of the testing home page is under 400kb and yet the page load speed is 2.16s on second load with the biggest chunk going to TTFB as you can see from the attached image 1. Server location Singapore, my location Brisbane Australia. One might say that's pretty good but seeing that this will be image heavy site due to its nature and target audience with at least 15 intro images instead of current 3 when in production speed problems are to be anticipated..... But wait there is more....

when using pingdom and using Amsterdam Test server it gets worse see image 2. (and that is amongst better results it can go as bad as 12s)
then I compare that to a competing site which is not using cache, has grade C with Yslow as opposed to my A and weights 1.1MB's is also with godaddy and yet, the competing site is a whole 1.s ahead (image 3.)

obviously latency is a problem but I wonder if its the host or Drupal issue? Any thoughts and suggestions would be most appreciated.

AttachmentSize
Image 1. NET analysis 277.64 KB
Image 2 using pingdom168.25 KB
Image 3 using pingdom competing site142.88 KB

Comments

Modules

ogi's picture

What modules related to performance do you use? I would recommend at least File Cache (disclaimer: I'm the maintainer) and Entity Cache. Maybe Boost and Auth Cache too depending on the context.

Hi Ogi, and thanks for your

Kristina Katalinic's picture

Hi Ogi,
and thanks for your response:

At the moment I am using Boost, entity cache, and CSS Embedded Images which have all done their part on speeding things up.

Can file cache be used on shared hosting thou?

Drupal web developer and Search Engine Optimisation consultant at Webmar Design & Development Brisbane, Australia
Google+

File Cache on shared hosting

ogi's picture

Yes, File Cache's best use case is shared hosting.

From what I'm reading it's best to use any hosting provider other than GoDaddy :-)

already dumped godaddy :)

Kristina Katalinic's picture

and installed filecache module.

I am wondering now if Boost and filecache wouldn't be at cross purpose because of "boost module generates caches of pages that are directly served by web
server. File Cache can plug in regular Drupal page caching and provide
very fast page caching but this still needs a bit of PHP to be
executed."

and I am using this setting now: $conf['cache_backends'] = array('sites/all/modules/filecache/filecache.inc');
$conf['cache_default_class'] = 'DrupalFileCache';

would it be more efficient to use? this setting instead:This mode of operation allows Drupal to serve cached pages without
accessing the database at all. The precise operation when
filecache_fast_pagecache is enabled is as follows:

  1. Load cid 'variables' in bin 'cache' into $variables. If it doesn't
    exist, no further action is taken.
  2. Set the following $conf variables. Each variable is set only if
    it's unset:
    $conf['page_cache_without_database'] = TRUE;
    $conf['page_cache_invoke_hooks'] = FALSE;
    $conf['page_cache_maximum_age'] = $variables['page_cache_maximum_age'];
    $conf['cache_lifetime'] = $variables['cache_lifetime'];
    $conf['page_compression'] = $variables['page_compression'];

also if using above is boost really necessary then?

I am using Apache server btw.

Drupal web developer and Search Engine Optimisation consultant at Webmar Design & Development Brisbane, Australia
Google+

Even when cached pages are

ogi's picture

Even when cached pages are served without accessing DB (which can be a huge win in some setups, e.g. slow DB), this activates PHP interpreter while Boost doesn't reach any PHP, so it's still different. Whether this leads to significant performance improvement depends on the setup but nothing can beat serving static files (this is what Boost does). There's a price for that - limited only to anonymous users (same limitation for standard Drupal page caching), more complex configuration and specific expiration logic.

The text for filecache_fast_pagecache should be reworked to a more practical one and I'll do it for next release of File Cache.

Well you are using Boost I

Jamie Holly's picture

Well you are using Boost I see. In the U.S. I'm getting the page in 2.11s, but there is 1.84s of latency. That isn't a Drupal problem, that's a network problem. I would talk to your hosting provider about it.


HollyIT - Grab the Netbeans Drupal Development Tool at GitHub.

Hi Jamie and thanks for your

Kristina Katalinic's picture

Hi Jamie and thanks for your response. Yes I am using Boost although I must admit I am not noticing much improvement is coming from it. At first glance it would seem that biggest improvement is coming from use of CSS Embedded Images module.

Have already notified my hosting provider (unfortunately godaddy) who gave me a very diplomatic response saying they are aware of the latency issue and are working on solution but have no ETA on resolution.

It seems that solution is in change of hosting providers but I tested a few hosting companies here in Australia and it did not seem they offered much improvement in terms of latency so if anyone from Australia has a suggestion for a good shared host please share :)

This bit of code in my .htaccess also did miracles for my ratings with Yslow and Page Speed

Cache specified files for 31 days

<filesmatch "\.(ico|flv|jpg|jpeg|png|gif|swf)$">
Header set Cache-Control "max-age=2678400, public"
</filesmatch>
# Cache HTML files for a couple hours
<filesmatch "\.(html|htm)$">
Header set Cache-Control "max-age=7200, private, must-revalidate"
</filesmatch>
# Cache PDFs for a day
<filesmatch "\.(pdf)$">
Header set Cache-Control "max-age=86400, public"
</filesmatch>
# Cache CSS for 31 days
<filesmatch "\.(css|css.gz)$">
Header set Cache-Control "max-age=2678400, private"
</filesmatch>
# Cache Javascripts for 31 days
<filesmatch "\.(js|js.gz)$">
Header set Cache-Control "max-age=2678400, private"
</filesmatch>

Header append Vary Accept-Encoding
# Turn ETags Off
<IfModule mod_headers.c>
Header unset ETag
</IfModule>

FileETag None

Drupal web developer and Search Engine Optimisation consultant at Webmar Design & Development Brisbane, Australia
Google+

GoDaddy is by far one of the

Jamie Holly's picture

GoDaddy is by far one of the worst hosts out there when it comes to shared hosting. They always say "they are working" on problems, but they never do get resolved. The only hosting company I really know of in Australia is Web24. I set a Drupal site up with them for a friend and they work really well.

http://www.web24.com.au/


HollyIT - Grab the Netbeans Drupal Development Tool at GitHub.

surprisingly I am getting

Kristina Katalinic's picture

surprisingly I am getting latency of 2.84s here in Brisbane from my server in Singapore compared to your 1.84s all the way in USA

Drupal web developer and Search Engine Optimisation consultant at Webmar Design & Development Brisbane, Australia
Google+

Singapore speeds are a phurphy

geoff's picture

Singapore is "technically" faster for Australia, but testing I did found that most traffic was routed though west coast USA to get to east coast Australia.

Meaning USA is much faster.

Japan has the same results.

I think the Singapore link is very expensive relative, so it is cheaper for ISPs to route via USA.

Using AWS, I found that Oregon (US West 2) was fastest for East Coast Australia.

That's because of how the

Jamie Holly's picture

That's because of how the internet operates. Up until about 2008 almost all internet traffic routed through the United States at some point. They are starting to change that, but it takes time, plus the U.S. isn't too keen on that idea, especially when it comes to intelligence. If they can get routing to stay more local, then the internet will run so much faster and users will be so much happier.


HollyIT - Grab the Netbeans Drupal Development Tool at GitHub.

Hi Geoff, another

Kristina Katalinic's picture

Hi Geoff,
another contradiction there because AWS is supposed to have a data centre in Sydney Australia....

Strange but excellent data coming out of this discussion :)

Drupal web developer and Search Engine Optimisation consultant at Webmar Design & Development Brisbane, Australia
Google+

Edge point - not data center - in Sydney

geoff's picture

AWS do not have a data center in Sydney yet - they only recently they added an edge point for their CDN

Waiting waiting waiting.... I spoke to some AWS people last year and they said maybe 18 months.......

Quadra

totocol's picture

I've had a good experience with Quadra Hosting in Australia for shared hosting. Have both Drupal 6 and 7 sites running on the same account and is all going well. I've also seen that the fact that they keep the databases in a different server seems to help with the speed. I've moved a few clients with sites in the US to this one and they have been pretty happy

For bigger sites (running Tomcat for Solr) I'm using VPS plans on Digital Pacific. They also seem to be good but more expensive.

Hi totocol, I have just

Kristina Katalinic's picture

Hi totocol,

I have just emailed Quadra hosting (no contact number at all....kinda not too happy about that) as some of my sites are legitimate escort directories so I want to ensure they'll be acceptable (some hosts have issues with adult sites regardless if they are legit or not)

could you give me some latency figures for Quadra on shared hosting or a domain which I can check for myself?

I am using digital pacific shared hosting already (although that is a joomla site) and latency I am getting is rather on the high end for aussie based host 400-500ms which I guess would be reasonable expectation from a US based host. Did not use their VPS hosting plans yet (price is a bit steep for my needs at the moment).

Drupal web developer and Search Engine Optimisation consultant at Webmar Design & Development Brisbane, Australia
Google+

Quadra

totocol's picture

Yes, i was a bit worried that they didn't have phone support but they have been great on email. Got someone helping me after midnight on a weekend until my site was up.

Haven't checked their latency times but my client is much happier with their current performance when comparing it with the plans they had on US servers.

All sites I have with them are on the same IP

202.146.210.112

Would be interested to hear your comparisons with other providers. I was with webcity for a while but wasn't so happy with their support after they starting growing too much and moved my sites from them.

Raul

Hi Raul, on that IP I am

Kristina Katalinic's picture

Hi Raul,
on that IP I am getting 314ms latency and compared to Shared hosting on Digital Pacific thats a fairly nice gain of about 200ms. Still its a far fetch from quoted latency on their site

"Why Use Quadra Hosting's Australian Web Hosting Server?

Faster Speed

When hosting your web site on our Australian based servers, your customers within Australia will experience a much more responsive and faster loading time of your web site.

The faster speed is due to the fact that the time for a small ping packet to reach an Australian server is typically between 6ms - 40ms, compared to 200-300ms when your web site is hosted in USA."

Nonetheless its still best I experienced with Aussie hosts so far.

Net Logistics might be better but I can't host my sites there due to Adult content nature.

Your simsolutions is scoring rather poorly around 1s thou

As I test a few other hosts I'll post my findings here. I feel its about time we stop being overcharged by Aussie hosts on the pretext of better site speeds because as it stands now a decent US host can offer latencies as good as, an aussie host charging 3-5 times more for the same speeds.

Drupal web developer and Search Engine Optimisation consultant at Webmar Design & Development Brisbane, Australia
Google+

My sites

totocol's picture

Hey

Good comparison

I actually have my personal sites on a US server with hostgator

Have about 5-6 sites D6 and 7 on a hatching plan ($9/month) which is pretty good so I dot mind the higher latency

It looks like I'll be going

Kristina Katalinic's picture

It looks like I'll be going ahead with Quadra Hosting. Like you said they were really quick to respond by email and their latency is acceptable....few other guys on Drupal suggested them so I guess they'll be right

Of course I'll be sure to post an update in a few months if they don't turn out as hoped

Drupal web developer and Search Engine Optimisation consultant at Webmar Design & Development Brisbane, Australia
Google+

how are you measuring this latency?

tripper54's picture

Pinging Raul's Quadrahosting IP (from outside Sydney) I get around 40ms, which is consistent with Quadrahosting's claims.

If you are in Australia and it's taking over 300ms for a packet to come back from an Australian data centre, something is wrong with your network connection.

changed hosting but....

Kristina Katalinic's picture

Hey guys, I changed the host to Quadra (still using temp domain) and I cant say I am seeing much improvement on first page load.
This data is from NET tab using Chrome:
connecting period is usually less then 200ms, sending 1ms so awesome but, then the waiting period kills it with 1s plus, receiving is under 200ms.

I asked the hosting provider and they said temporary domains aren't limited performance wise so it cant be that and implied that it could be Drupal......suggested I try using libphp5 instead of php_fastcgi5

Obviously in the breakdown it looks like biggest amount of time is consumed by "waiting" any of you tech's have any idea what are we "waiting" for in layman's terms?

All answers greatly appreciated guys because we are talking about 4-5 time price increase and 30GB data transfer limit compared to the old unlimited..

Drupal web developer and Search Engine Optimisation consultant at Webmar Design & Development Brisbane, Australia
Google+

nail down the cause of the delay

tripper54's picture

Have you installed devel module and switched on page processing and database query stats? That will at least give you some idea as to whether the performance bottleneck is with the db or php.

You should check these metrics with authenticated and anonymous visits (with the cache nicely warmed up)

Hi tripper54 and thanks for

Kristina Katalinic's picture

Hi tripper54 and thanks for taking an interest. On your advice I switched on the devel module and these are the figures I am getting bellow.

I am new in the Drupal world so not sure if 110 queries is excessive for Drupal 7.

Looks like block class module is one of the really slow ones but perhaps you as a more experienced user can make more sense of this data and give a few pointers so I can speed things up. This data is while logged in as admin. I am new to Drupal so all help is most appreciated.

Executed 110 queries in 239.43 ms. Queries exceeding 5 ms are highlighted.
ms#whereops
query
target
8.6436block_classP A E
SELECT css_class FROM block_class WHERE module = :module AND delta = :delta
default
8.481field_sql_storage_field_storage_loadP A E
SELECT t.* FROM field_data_taxonomy_forums t WHERE (entity_type = :db_condition_placeholder_0) AND (entity_id IN (:db_condition_placeholder_1)) AND (language IN (:db_condition_placeholder_2)) AND (deleted = :db_condition_placeholder_3) ORDER BY delta ASC
default
8.372variable_setP A
UPDATE variable SET value=:db_update_placeholder_0 WHERE ( (name = :db_condition_placeholder_0) )
default
7.5236block_classP A E
SELECT css_class FROM block_class WHERE module = :module AND delta = :delta
default
7.484block_block_viewP A E
SELECT body, format FROM block_custom WHERE bid = :bid
default
7.112user_block_viewP A E
SELECT uid, name FROM users WHERE status <> 0 AND access <> 0 ORDER BY created DESC LIMIT 0, 5
default
7.075node_last_viewedP A E
SELECT timestamp FROM history WHERE uid = :uid AND nid = :nid
default
6.912block_block_list_alterP A E
SELECT module, delta, rid FROM block_role
default
6.4236block_classP A E
SELECT css_class FROM block_class WHERE module = :module AND delta = :delta
default
6.231comment_node_loadP A E
SELECT nid, cid, last_comment_timestamp, last_comment_name, last_comment_uid, comment_count FROM node_comment_statistics WHERE nid IN (:comments_enabled_0)
default
6.236block_classP A E
SELECT css_class FROM block_class WHERE module = :module AND delta = :delta
default
6.142user_block_viewP A E
SELECT COUNT(DISTINCT s.uid) FROM sessions s WHERE s.timestamp >= :timestamp AND s.uid > 0
default
6.136block_classP A E
SELECT css_class FROM block_class WHERE module = :module AND delta = :delta
default
5.936block_classP A E
SELECT css_class FROM block_class WHERE module = :module AND delta = :delta
default
5.854block_block_viewP A E
SELECT body, format FROM block_custom WHERE bid = :bid
default
5.492node_block_list_alterP A E
SELECT module, delta, type FROM block_node_type
default
5.481menu_link_get_preferredP A E
SELECT ml.*, m.*, ml.weight AS link_weight FROM menu_links ml LEFT OUTER JOIN menu_router m ON m.path = ml.router_path WHERE (ml.link_path IN (:db_condition_placeholder_0))
default
5.472user_block_viewP A E
SELECT u.uid, u.name, MAX(s.timestamp) AS max_timestamp FROM users u INNER JOIN sessions s ON u.uid = s.uid WHERE s.timestamp >= :interval AND s.uid > 0 GROUP BY u.uid, u.name ORDER BY max_timestamp DESC LIMIT 0, 10
default
5.1236block_classP A E
SELECT css_class FROM block_class WHERE module = :module AND delta = :delta
default
4.942_block_load_blocksP A E
SELECT b.* FROM block b WHERE (b.theme = :db_condition_placeholder_0) AND (b.status = :db_condition_placeholder_1) ORDER BY b.region ASC, b.weight ASC, b.module ASC
default
4.8136block_classP A E
SELECT css_class FROM block_class WHERE module = :module AND delta = :delta
default
4.691drupal_lookup_pathP A E
SELECT source, alias FROM url_alias WHERE source IN (:system_0, :system_1, :system_2, :system_3, :system_4, :system_5, :system_6, :system_7, :system_8, :system_9, :system_10, :system_11, :system_12, :system_13, :system_14, :system_15, :system_16, :system_17, :system_18, :system_19, :system_20, :system_21, :system_22, :system_23, :system_24, :system_25, :system_26) AND language IN (:language, :language_none) ORDER BY language ASC, pid ASC
default
4.0636block_classP A E
SELECT css_class FROM block_class WHERE module = :module AND delta = :delta
default
4.012variable_setP A
SELECT 1 AS expression FROM variable variable WHERE ( (name = :db_condition_placeholder_0) ) FOR UPDATE
default
3.7436block_classP A E
SELECT css_class FROM block_class WHERE module = :module AND delta = :delta
default
3.671field_sql_storage_field_storage_loadP A E
SELECT t.* FROM field_data_body t WHERE (entity_type = :db_condition_placeholder_0) AND (entity_id IN (:db_condition_placeholder_1)) AND (language IN (:db_condition_placeholder_2)) AND (deleted = :db_condition_placeholder_3) ORDER BY delta ASC
default
3.5136block_classP A E
SELECT css_class FROM block_class WHERE module = :module AND delta = :delta
default
3.4836block_classP A E
SELECT css_class FROM block_class WHERE module = :module AND delta = :delta
default
3.4636block_classP A E
SELECT css_class FROM block_class WHERE module = :module AND delta = :delta
default
3.22user_block_viewP A E
SELECT COUNT(DISTINCT s.uid) FROM sessions s WHERE s.timestamp >= :timestamp AND s.uid > 0
default
2.9536block_classP A E
SELECT css_class FROM block_class WHERE module = :module AND delta = :delta
default
2.5136block_classP A E
SELECT css_class FROM block_class WHERE module = :module AND delta = :delta
default
2.485node_last_viewedP A E
SELECT timestamp FROM history WHERE uid = :uid AND nid = :nid
default
2.236block_classP A E
SELECT css_class FROM block_class WHERE module = :module AND delta = :delta
default
2.0536block_classP A E
SELECT css_class FROM block_class WHERE module = :module AND delta = :delta
default
1.992node_get_recentP A E
SELECT n.nid AS nid FROM node n ORDER BY n.changed DESC LIMIT 10 OFFSET 0
default
1.8636block_classP A E
SELECT css_class FROM block_class WHERE module = :module AND delta = :delta
default
1.812metatag_metatags_load_multipleP A E
SELECT entity_id, data FROM metatag WHERE entity_type = :type AND entity_id IN (:ids_0)
default
1.7836block_classP A E
SELECT css_class FROM block_class WHERE module = :module AND delta = :delta
default
1.7636block_classP A E
SELECT css_class FROM block_class WHERE module = :module AND delta = :delta
default
1.572metatag_metatags_load_multipleP A E
SELECT 1 FROM metatag LIMIT 0, 1
default
1.412metatag_metatags_load_multipleP A E
SELECT entity_id, data FROM metatag WHERE entity_type = :type AND entity_id IN (:ids_0)
default
1.331lock_acquireP A
INSERT INTO semaphore (name, value, expire) VALUES (:db_insert_placeholder_0, :db_insert_placeholder_1, :db_insert_placeholder_2)
default
1.336block_classP A E
SELECT css_class FROM block_class WHERE module = :module AND delta = :delta
default
1.226drupal_lookup_pathP A E
SELECT alias FROM url_alias WHERE source = :source AND language IN (:language, :language_none) ORDER BY language ASC, pid DESC
default
1.21user_node_loadP A E
SELECT uid, name, picture, data FROM users WHERE uid IN (:uids_1)
default
1.192user_block_viewP A E
SELECT u.uid, u.name, MAX(s.timestamp) AS max_timestamp FROM users u INNER JOIN sessions s ON u.uid = s.uid WHERE s.timestamp >= :interval AND s.uid > 0 GROUP BY u.uid, u.name ORDER BY max_timestamp DESC LIMIT 0, 10
default
1.1736block_classP A E
SELECT css_class FROM block_class WHERE module = :module AND delta = :delta
default
1.141lock_releaseP A
DELETE FROM semaphore WHERE (name = :db_condition_placeholder_0) AND (value = :db_condition_placeholder_1)
default
1.131forum_block_view_pre_renderP A E
SELECT f.* FROM forum_index f ORDER BY f.created DESC LIMIT 5 OFFSET 0
default
1.12user_block_viewP A E
SELECT uid, name FROM users WHERE status <> 0 AND access <> 0 ORDER BY created DESC LIMIT 0, 5
default
1.0236block_classP A E
SELECT css_class FROM block_class WHERE module = :module AND delta = :delta
default
0.991forum_block_view_pre_renderP A E
SELECT f.* FROM forum_index f ORDER BY f.last_comment_timestamp DESC LIMIT 5 OFFSET 0
default
0.9436block_classP A E
SELECT css_class FROM block_class WHERE module = :module AND delta = :delta
default
0.942node_block_list_alterP A E
SELECT module, delta, type FROM block_node_type
default
0.9436block_classP A E
SELECT css_class FROM block_class WHERE module = :module AND delta = :delta
default
0.9336block_classP A E
SELECT css_class FROM block_class WHERE module = :module AND delta = :delta
default
0.9236block_classP A E
SELECT css_class FROM block_class WHERE module = :module AND delta = :delta
default
0.912comment_get_recentP A E
SELECT c.* FROM comment c INNER JOIN node n ON n.nid = c.nid WHERE (c.status = :db_condition_placeholder_0) AND (n.status = :db_condition_placeholder_1) ORDER BY c.created DESC, c.cid DESC LIMIT 10 OFFSET 0
default
0.891toolbar_get_menu_treeP A E
SELECT * FROM menu_links WHERE menu_name = :menu_name AND module = :module AND link_path = :path
default
0.8336block_classP A E
SELECT css_class FROM block_class WHERE module = :module AND delta = :delta
default
0.8336block_classP A E
SELECT css_class FROM block_class WHERE module = :module AND delta = :delta
default
0.821EntityCacheControllerHelper::entityCacheLoadP A E
SELECT revision.vid AS vid, base.uid AS uid, revision.title AS title, revision.log AS log, revision.status AS status, revision.comment AS comment, revision.promote AS promote, revision.sticky AS sticky, base.nid AS nid, base.type AS type, base.language AS language, base.created AS created, base.changed AS changed, base.tnid AS tnid, base.translate AS translate, revision.timestamp AS revision_timestamp, revision.uid AS revision_uid FROM node base INNER JOIN node_revision revision ON revision.vid = base.vid WHERE (base.nid IN (:db_condition_placeholder_0))
default
0.811flood_is_allowedP A E
SELECT COUNT() FROM flood WHERE event = :event AND identifier = :identifier AND timestamp > :timestamp
default
0.81views_load_display_recordsP A E
SELECT * FROM views_display WHERE vid IN (:vids_0) ORDER BY vid, position
default
0.85node_last_viewedP A E
SELECT timestamp FROM history WHERE uid = :uid AND nid = :nid
default
0.792devel_switch_user_listP A E
SELECT DISTINCT u.uid AS uid, u.access AS access FROM users u LEFT OUTER JOIN users_roles r ON u.uid = r.uid WHERE (u.uid > :db_condition_placeholder_0) AND (u.status > :db_condition_placeholder_1) AND( (u.uid = :db_condition_placeholder_2) OR (r.rid IN (:db_condition_placeholder_3)) ) ORDER BY u.access DESC LIMIT 10 OFFSET 0
default
0.731menu_get_itemP A E
SELECT * FROM menu_router WHERE path IN (:ancestors_0) ORDER BY fit DESC LIMIT 0, 1
default
0.7336block_classP A E
SELECT css_class FROM block_class WHERE module = :module AND delta = :delta
default
0.7336block_classP A E
SELECT css_class FROM block_class WHERE module = :module AND delta = :delta
default
0.71forum_node_loadP A E
SELECT f.nid AS nid, f.tid AS tid FROM forum f WHERE (f.vid IN (:db_condition_placeholder_0))
default
0.672variable_setP A
UPDATE variable SET value=:db_update_placeholder_0 WHERE ( (name = :db_condition_placeholder_0) )
default
0.661lock_release_allP A
DELETE FROM semaphore WHERE (value = :db_condition_placeholder_0)
default
0.6536block_classP A E
SELECT css_class FROM block_class WHERE module = :module AND delta = :delta
default
0.6336block_classP A E
SELECT css_class FROM block_class WHERE module = :module AND delta = :delta
default
0.632user_rolesP A E
SELECT r.rid AS rid, r.name AS name FROM role r INNER JOIN role_permission p ON r.rid = p.rid WHERE (p.permission = :db_condition_placeholder_0) ORDER BY weight ASC, name ASC
default
0.636block_classP A E
SELECT css_class FROM block_class WHERE module = :module AND delta = :delta
default
0.592devel_switch_user_listP A E
SELECT uid FROM users WHERE uid > 0 AND uid NOT IN (:uids_0) AND status > 0 ORDER BY access DESC LIMIT 0, 9
default
0.582variable_setP A
SELECT 1 AS expression FROM variable variable WHERE ( (name = :db_condition_placeholder_0) ) FOR UPDATE
default
0.542blog_block_viewP A E
SELECT n.nid AS nid, n.title AS title, n.created AS created FROM node n WHERE (type = :db_condition_placeholder_0) AND (status = :db_condition_placeholder_1) ORDER BY created DESC LIMIT 10 OFFSET 0
default
0.542blog_block_viewP A E
SELECT n.nid AS nid, n.title AS title, n.created AS created FROM node n WHERE (type = :db_condition_placeholder_0) AND (status = :db_condition_placeholder_1) ORDER BY created DESC LIMIT 10 OFFSET 0
default
0.521shortcut_set_loadP A E
SELECT ss.
FROM shortcut_set ss WHERE (set_name = :db_condition_placeholder_0)
default
0.5136block_classP A E
SELECT css_class FROM block_class WHERE module = :module AND delta = :delta
default
0.491menu_get_itemP A E
SELECT * FROM menu_router WHERE path IN (:ancestors_0, :ancestors_1, :ancestors_2) ORDER BY fit DESC LIMIT 0, 1
default
0.492node_get_recentP A E
SELECT n.nid AS nid FROM node n ORDER BY n.changed DESC LIMIT 10 OFFSET 0
default
0.481EntityCacheControllerHelper::entityCacheLoadP A E
SELECT base.vid AS vid, base.name AS name, base.machine_name AS machine_name, base.description AS description, base.hierarchy AS hierarchy, base.module AS module, base.weight AS weight FROM taxonomy_vocabulary base WHERE (base.machine_name = :db_condition_placeholder_0) ORDER BY base.weight ASC, base.name ASC
default
0.471menu_local_tasksP A E
SELECT menu_router.* FROM menu_router menu_router WHERE (tab_root = :db_condition_placeholder_0) AND (context <> :db_condition_placeholder_1) ORDER BY weight ASC, title ASC
default
0.472_block_load_blocksP A E
SELECT b.* FROM block b WHERE (b.theme = :db_condition_placeholder_0) AND (b.status = :db_condition_placeholder_1) ORDER BY b.region ASC, b.weight ASC, b.module ASC
default
0.452metatag_metatags_load_multipleP A E
SELECT 1 FROM metatag LIMIT 0, 1
default
0.441drupal_lookup_pathP A E
SELECT source FROM url_alias WHERE alias = :alias AND language IN (:language, :language_none) ORDER BY language ASC, pid DESC
default
0.41menu_load_linksP A E
SELECT ml.* FROM menu_links ml WHERE (ml.menu_name = :db_condition_placeholder_0) ORDER BY weight ASC
default
0.46drupal_lookup_pathP A E
SELECT alias FROM url_alias WHERE source = :source AND language IN (:language, :language_none) ORDER BY language ASC, pid DESC
default
0.41shortcut_current_displayed_setP A E
SELECT s.set_name AS set_name FROM shortcut_set s INNER JOIN shortcut_set_users u ON s.set_name = u.set_name WHERE (u.uid = :db_condition_placeholder_0)
default
0.394block_block_viewP A E
SELECT body, format FROM block_custom WHERE bid = :bid
default
0.384block_block_viewP A E
SELECT body, format FROM block_custom WHERE bid = :bid
default
0.386drupal_lookup_pathP A E
SELECT alias FROM url_alias WHERE source = :source AND language IN (:language, :language_none) ORDER BY language ASC, pid DESC
default
0.382comment_get_recentP A E
SELECT c.* FROM comment c INNER JOIN node n ON n.nid = c.nid WHERE (c.status = :db_condition_placeholder_0) AND (n.status = :db_condition_placeholder_1) ORDER BY c.created DESC, c.cid DESC LIMIT 10 OFFSET 0
default
0.381drupal_get_filenameP A E
SELECT filename FROM system WHERE name = :name AND type = :type
default
0.376drupal_lookup_pathP A E
SELECT alias FROM url_alias WHERE source = :source AND language IN (:language, :language_none) ORDER BY language ASC, pid DESC
default
0.371ctools_export_load_objectP A E
SELECT 1 FROM views_view LIMIT 0, 1
default
0.3636block_classP A E
SELECT css_class FROM block_class WHERE module = :module AND delta = :delta
default
0.361ctools_export_load_objectP A E
SELECT t__0.* FROM views_view t__0 WHERE (name IN (:db_condition_placeholder_0))
default
0.356drupal_lookup_pathP A E
SELECT alias FROM url_alias WHERE source = :source AND language IN (:language, :language_none) ORDER BY language ASC, pid DESC
default
0.355node_last_viewedP A E
SELECT timestamp FROM history WHERE uid = :uid AND nid = :nid
default
0.352user_rolesP A E
SELECT r.rid AS rid, r.name AS name FROM role r INNER JOIN role_permission p ON r.rid = p.rid WHERE (p.permission = :db_condition_placeholder_0) ORDER BY weight ASC, name ASC
default
0.342devel_switch_user_listP A E
SELECT uid FROM users WHERE uid > 0 AND uid NOT IN (:uids_0) AND status > 0 ORDER BY access DESC LIMIT 0, 9
default
0.342block_block_list_alterP A E
SELECT module, delta, rid FROM block_role
default
0.332devel_switch_user_listP A E
SELECT DISTINCT u.uid AS uid, u.access AS access FROM users u LEFT OUTER JOIN users_roles r ON u.uid = r.uid WHERE (u.uid > :db_condition_placeholder_0) AND (u.status > :db_condition_placeholder_1) AND( (u.uid = :db_condition_placeholder_2) OR (r.rid IN (:db_condition_placeholder_3)) ) ORDER BY u.access DESC LIMIT 10 OFFSET 0
default
0.315node_last_viewedP A E
SELECT timestamp FROM history WHERE uid = :uid AND nid = :nid
default
0.316drupal_lookup_pathP A E
SELECT alias FROM url_alias WHERE source = :source AND language IN (:language, :language_none) ORDER BY language ASC, pid DESC
defaul

Drupal web developer and Search Engine Optimisation consultant at Webmar Design & Development Brisbane, Australia
Google+

High performance

Group notifications

This group offers an RSS feed. Or subscribe to these personalized, sitewide feeds:

Hot content this week