Need Ninja Advice for Slow-Loading Site

We encourage users to post events happening in the community to the community events group on https://www.drupal.org.
Susan Rust's picture

We built a large site, a bit module-heavy but nothing out of the ordinary. Problem is that the page flickers on each and every page which seems odd since many pages have very little content or graphics. By flicker, we mean that the white background of the content/node loads after everything else so that purple background pops in first, then the white background.

We turned on the cache and other basic settings. We also moved to a large server, which helped the overall loading speed but didn't do anything for the flickering.

None of our other site flicker like this one. D6 install, custom theme with pretty clean CSS. Much thanks for any advice: http://www.mbaonlinelink.com.


9-24-09 Update
Thanks for all the really great advice. We did several things:

  1. Hosting company increased number of Apache and PHP requests allowed (big difference)
  2. Added a white background for faking the visual blinking/redraw time (thanks C for that suggestion)
  3. Tuned all the performance settings in Drupal (one of the settings in hidden and separate from the others)
  4. Will do the boost module which allows for php page caching (tons of stuff in that module)
  5. Moved it to larger server

We used the boost module on a smaller site first and it's wonderful, should be on everyone's launch checklist.
It's snappy now and visually not distracting with the purple to white flicker. Thanks everyone.

Susan | http://www.greenbirdmedia.com
"The secret to happiness to want what you have and don't want what you don't have" --The 14th Dalai Lama

Comments

apache optimization? CSS cache and boost module?

mackh's picture

Hi

A couple things you can do

  • in apache, turn on APC caching

  • aggregate your css so that there are less HTTP requests made on each page load - in d6 thats in /admin/settings/performance, there are 20 stylesheets being included so theres 20 extra http requests - more info on structuring css from http://affinitybridge.com/blog/keeping-css-tidy-makes-themers-happy

  • check out the boost module to give lighting fast page loads to anonymous users, logged in users expect to wait a bit longer on page request, boost can help you w first impressions of a speedy site. http://drupal.org/project/boost

  • get firebug and the yslow plugin, start analyzing the loading of your page - maybe move your ad system includes into the footer of the page

Hope these tips help you out, I'd like to hear back if they do
-M

Great Tips

Susan Rust's picture

Hey Mackh, will have the boys check it out, we'll definitely let you know. Appreciate the guidance, thank you!

server level fix for slow site

Susan Rust's picture

Hey Mackh,

We host with HostGator and so we asked them to do apache optimization and it significantly improved the speed of the site. That was great. We haven't had a chance but will look at boost module again. Great help, thanks much.

Happy Sunday!

Is this reproduceable across

christefano's picture

Is this reproduceable across all browsers? Does it go away when JavaScript is disabled in the browser? How about when CSS aggregation is on?

I don't see any flickering in IE6 and IE7 or with Safari and Firefox on OS X.

Love your browser

Susan Rust's picture

You must have killer, lightning fast machines...but I appreciate your time to look at in multiple browsers. Glad you're not seeing anything out of the ordinary.

Yours depending on the kindness of strangers,
S

I don't think this is a speed

ChristophWeber's picture

I don't think this is a speed problem, although the speedier the page loads, the less distracting the purple/white transition will be. The main issue is the high contrast between purple background and the white foreground, coupled with the timing of element loads. Not all browsers handle it the same. Safari displays sidebar and header content almost immediately with the background, while Firefox sort of waits to display all content at once, especially upon a complete page refresh. (both on MacOSX)
Maybe you can play with the background, e.g. use an image with appropriate purple/white/purple colors to "fake" the final look?

Very nice design, BTW.

--
Christoph Weber

Are you using a lot of views?

domesticat's picture

If you're making heavy use of Views, also look into Views caching (a fairly recent addition).

Views caching

Susan Rust's picture

Sounds like a perfect scenario for us. The entire site is a giant set of view so we will definitely do well to take a look at that. Thank you for the great tip. Thanks very much,