Take the 2-minute tour ×
Webmasters Stack Exchange is a question and answer site for pro webmasters. It's 100% free, no registration required.

I run a website Cucumbertown with an initial pay load of nearly 9KB zipped.

enter image description here

All my js is delayed loaded with requirejs and modernizer is the only exception. Now all my webpages are Nginx cached and only 10-15% hits go to the backend proxy. And the cache is invalidated by logged in users as proxy_cache_bypass. So for an anonymous user its nearly always a cache hit.

I have some basic OS tuning with

default via ip dev eth0  initcwnd 15                                          
net.ipv4.tcp_slow_start_after_idle 0

Despite an all cache & large initcwnd my pages still take 2.5 – 3 seconds.

I have a yslow score of

enter image description here

And page speed at

enter image description here

Are there strategies that can help deliver webpages even faster than this? Deliver pages at 1+ second time for 10KB payload?

Notes: My servers run of a fairly good data center from Linode at Fremont.

share|improve this question

migrated from serverfault.com Oct 23 '12 at 5:11

This question came from our site for professional system and network administrators.

add comment

4 Answers 4

First of all: you are basically doing a lot of things very good at the moment. This results in good grades in PageSpeed for example. Also keep in mind that the biggest part of the waiting time is spent on the frontend, so it makes sense to optimize this before going deep into server configuration.

These are some ideas:

  • there are a lot of image requests, for example to your kitchen subdomain. If possible, combine them to one sprited image.
  • You are using some external Javascripts like Uservoice. They tend to slow down the loading a bit.
  • if you are not doing this already, try to serve your static JS, CSS and imagefiles from a cookieless CDN subdomain
share|improve this answer
    
@Cherian I have tried to run pingdom tool on your homepage, there are 43 requests.. I would say a bit too many. Try to combine some images in a sprite. –  milo5b Oct 23 '12 at 12:37
    
@milo5b Thanks for the images issue. But i dont think it will decreases the load time. Images load in parallel and the page load time is not affected even if the images are not loaded. –  Cherian Oct 24 '12 at 6:00
    
All the js except modernizer & requirejs is delayloaded. And thirdparty js is loaded via setimeout after domComplete. All assets including js/images etc are loaded from a cookieless domain fruits.cucumbertown.com –  Cherian Oct 24 '12 at 6:04
1  
Browsers have a limit on the number of requests that can be made in parallel to the same domain. stackoverflow.com/questions/7456325/… –  milo5b Oct 24 '12 at 9:16
add comment

One thing is combine and consolidate your .css and .js files. Even though they are usually cached, it's faster to download 1 5k file than 5 1k files.

share|improve this answer
    
All of them are combined. –  Cherian Oct 23 '12 at 2:29
    
I see a few on this page: cucumbertown.com/recipes/55082/tomato-chutney using chrome inspection panel d.pr/i/2BrN Some are probably not on your domain. –  willoller Oct 23 '12 at 2:40
add comment

It looks like most of your page load time is your images. I know other answerers have said this, but I want to add a little evidence behind it because you seemed skeptical. See the Firebug profile below.

Firebug profile of your site's load time

So, the first thing I want to point out is all of the gray/brown. That's blocking time where something - usually the other requests, but sometimes in-page javascript - is blocking the other requests from even beginning. If those images were in one request, or you had fewer images, then your site would load faster.

I'm also not seeing expires headers on your images, so even on reloads (which are much faster), there is still blocking going on as my browser has to actually check each image with the server to see if it's updated. An expires header would prevent this.

share|improve this answer
add comment

1.If your web host is farther you might want to look into getting a new host. you can do a ping test, if the response time is large try hosting service nearby.

2.If there is a problem with bandwidth site might be slow.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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