Current time: 11-13-2019, 04:59 PM Hello There, Guest! (LoginRegister)

Post Reply 
 
Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Looking for help on reducing Time To First Byte please!
05-15-2014, 07:52 PM
Post: #1
Looking for help on reducing Time To First Byte please!
Hi all,

First off thank you in advance for any help you can offer, it'll go a long way and will be very much appreciated.

http://www.webpagetest.org/result/140515...1/details/

In short I'm looking to reduce the time to first byte speed for the site which is currently sitting at 1.828s for the homepage. It has a clear correlation with search engine rankings compared to any other speed factor; so that's number 1 priority but obviously site speed in general is important.

I have spoken to our webhosts (same firm as our web development) and they moved the site to a new (faster hardware) server which is the IP address you can see in the report. But unfortunately the TTFB speed has actually risen from 1.3 to 1.8 secs.

It is shared hosting environment but I don't know how many other site's they've got on the server (a reverse IP lookup shows only us).

Any actionable tips you can give that I can present to them would be very much appreciated. I'm not very clued up on this stuff unfortunately. The extent of my knowledge would be to optimise images and try to combine request files but that I'm trumped (don't even know if these would afffect TTFB anyway).

Many thanks,
Pete.
Find all posts by this user
Quote this message in a reply
05-16-2014, 02:13 AM
Post: #2
RE: Looking for help on reducing Time To First Byte please!
Let's find out how much some basic optimization might help the TTFB.

First of all, if you are on a linux server use the following code in your .htaccess file, to leverage browser cache of static assets. Just paste this at the top of the .htaccess file and save, then upload to overwrite:
Code:
<IfModule mod_expires.c>
    ExpiresActive On
    ExpiresByType text/css A2628000
    ExpiresByType text/richtext A3600
    ExpiresByType image/svg+xml A3600
    ExpiresByType text/plain A3600
    ExpiresByType text/xsd A3600
    ExpiresByType text/xsl A3600
    ExpiresByType video/asf A2628000
    ExpiresByType video/avi A2628000
    ExpiresByType image/bmp A2628000
    ExpiresByType application/java A2628000
    ExpiresByType video/divx A2628000
    ExpiresByType application/msword A2628000
    ExpiresByType application/x-msdownload A2628000
    ExpiresByType image/gif A2628000
    ExpiresByType application/x-gzip A2628000
    ExpiresByType image/x-icon A2628000
    ExpiresByType image/jpeg A2628000
    ExpiresByType application/vnd.ms-access A2628000
    ExpiresByType audio/midi A2628000
    ExpiresByType video/quicktime A2628000
    ExpiresByType audio/mpeg A2628000
    ExpiresByType video/mp4 A2628000
    ExpiresByType video/mpeg A2628000
    ExpiresByType application/javascript A2628000
    ExpiresByType application/x-javascript A2628000
    ExpiresByType application/vnd.ms-project A2628000
    ExpiresByType application/vnd.oasis.opendocument.database A2628000
    ExpiresByType application/vnd.oasis.opendocument.chart A2628000
    ExpiresByType application/vnd.oasis.opendocument.formula A2628000
    ExpiresByType application/vnd.oasis.opendocument.graphics A2628000
    ExpiresByType application/vnd.oasis.opendocument.presentation A2628000
    ExpiresByType application/vnd.oasis.opendocument.spreadsheet A2628000
    ExpiresByType application/vnd.oasis.opendocument.text A2628000
    ExpiresByType audio/ogg A2628000
    ExpiresByType application/pdf A2628000
    ExpiresByType image/png A2628000
    ExpiresByType application/vnd.ms-powerpoint A2628000
    ExpiresByType audio/x-realaudio A2628000
    ExpiresByType application/x-shockwave-flash A2628000
    ExpiresByType application/x-tar A2628000
    ExpiresByType image/tiff A2628000
    ExpiresByType audio/wav A2628000
    ExpiresByType audio/wma A2628000
    ExpiresByType application/vnd.ms-write A2628000
    ExpiresByType application/vnd.ms-excel A2628000
    ExpiresByType application/zip A2628000
</IfModule>
Next, you have a fat page and 90% of your page load is images. On this page you can see all the images you are loading on browsers. The first thing that jumps out at me are images number 12, 16, 17 and 18. These are much larger in pixel size than you are scaling them to display on your site. Reducing the size of these to be closer to what you're scaling them to will save you alot of kb load and bandwidth. Remember: Scaling images to display small does not reduce the size of them - the browser still downloads the full size image no matter how small you tell it to display it.

On the same page, you will see many alerts saying "Not Progressive" and a link is provided, "Anaylize JEPG" and clicking that link will cause WPT to present you three versions of the image. Choose the one which has the smallest file size, save to your desktop, rename to match what is on the server and upload to overwrite. Do this for each one which has the "Not Progressive" alert.

I test and optimize to one set of test parameters only, regardless of distance and other factors. I use the Dulles, VA - IE 10 - Cable parameter exclusively, because of its reliability and repeatability, and also for IE 10 and 11 compliance which you want to observe. Here's my test for your site, using that parameter today:

http://www.webpagetest.org/result/140515_BQ_ANG/

So each change or set of changes you make, test against this same parameter.

On this page is your checklist for optimization. You can see here and from the grades posted above, you are failing in persistent connections as well. (That's "keep alive" enabled.)

Quote:Applicable Objects : All objects that are from a domain that serves more than one object for the page (i.e. if only a single object is served from a given domain it will not be checked)

What is checked: The response header contains a "keep-alive" directive or the same socket was used for more than one object from the given host

Ignore the lack of CDN for now, let's first roll up your sleeves and do this basic optimization work first, then let's see where we are.Let's get rid of all of the F grades you are receiving, let's turn those into straight A grades first.
Find all posts by this user
Quote this message in a reply
05-16-2014, 11:37 PM
Post: #3
RE: Looking for help on reducing Time To First Byte please!
Hi Anton,

Thanks so much for your detailed breakdown and pointers. I'll forward this thread onto our web developers/hosts to see what they can do with the information and let you know if/when changes have been made.

Much appreciated,
Pete.

(05-16-2014 02:13 AM)Anton Chigurh Wrote:  Let's find out how much some basic optimization might help the TTFB.

First of all, if you are on a linux server use the following code in your .htaccess file, to leverage browser cache of static assets. Just paste this at the top of the .htaccess file and save, then upload to overwrite:
Code:
<IfModule mod_expires.c>
    ExpiresActive On
    ExpiresByType text/css A2628000
    ExpiresByType text/richtext A3600
    ExpiresByType image/svg+xml A3600
    ExpiresByType text/plain A3600
    ExpiresByType text/xsd A3600
    ExpiresByType text/xsl A3600
    ExpiresByType video/asf A2628000
    ExpiresByType video/avi A2628000
    ExpiresByType image/bmp A2628000
    ExpiresByType application/java A2628000
    ExpiresByType video/divx A2628000
    ExpiresByType application/msword A2628000
    ExpiresByType application/x-msdownload A2628000
    ExpiresByType image/gif A2628000
    ExpiresByType application/x-gzip A2628000
    ExpiresByType image/x-icon A2628000
    ExpiresByType image/jpeg A2628000
    ExpiresByType application/vnd.ms-access A2628000
    ExpiresByType audio/midi A2628000
    ExpiresByType video/quicktime A2628000
    ExpiresByType audio/mpeg A2628000
    ExpiresByType video/mp4 A2628000
    ExpiresByType video/mpeg A2628000
    ExpiresByType application/javascript A2628000
    ExpiresByType application/x-javascript A2628000
    ExpiresByType application/vnd.ms-project A2628000
    ExpiresByType application/vnd.oasis.opendocument.database A2628000
    ExpiresByType application/vnd.oasis.opendocument.chart A2628000
    ExpiresByType application/vnd.oasis.opendocument.formula A2628000
    ExpiresByType application/vnd.oasis.opendocument.graphics A2628000
    ExpiresByType application/vnd.oasis.opendocument.presentation A2628000
    ExpiresByType application/vnd.oasis.opendocument.spreadsheet A2628000
    ExpiresByType application/vnd.oasis.opendocument.text A2628000
    ExpiresByType audio/ogg A2628000
    ExpiresByType application/pdf A2628000
    ExpiresByType image/png A2628000
    ExpiresByType application/vnd.ms-powerpoint A2628000
    ExpiresByType audio/x-realaudio A2628000
    ExpiresByType application/x-shockwave-flash A2628000
    ExpiresByType application/x-tar A2628000
    ExpiresByType image/tiff A2628000
    ExpiresByType audio/wav A2628000
    ExpiresByType audio/wma A2628000
    ExpiresByType application/vnd.ms-write A2628000
    ExpiresByType application/vnd.ms-excel A2628000
    ExpiresByType application/zip A2628000
</IfModule>
Next, you have a fat page and 90% of your page load is images. On this page you can see all the images you are loading on browsers. The first thing that jumps out at me are images number 12, 16, 17 and 18. These are much larger in pixel size than you are scaling them to display on your site. Reducing the size of these to be closer to what you're scaling them to will save you alot of kb load and bandwidth. Remember: Scaling images to display small does not reduce the size of them - the browser still downloads the full size image no matter how small you tell it to display it.

On the same page, you will see many alerts saying "Not Progressive" and a link is provided, "Anaylize JEPG" and clicking that link will cause WPT to present you three versions of the image. Choose the one which has the smallest file size, save to your desktop, rename to match what is on the server and upload to overwrite. Do this for each one which has the "Not Progressive" alert.

I test and optimize to one set of test parameters only, regardless of distance and other factors. I use the Dulles, VA - IE 10 - Cable parameter exclusively, because of its reliability and repeatability, and also for IE 10 and 11 compliance which you want to observe. Here's my test for your site, using that parameter today:

http://www.webpagetest.org/result/140515_BQ_ANG/

So each change or set of changes you make, test against this same parameter.

On this page is your checklist for optimization. You can see here and from the grades posted above, you are failing in persistent connections as well. (That's "keep alive" enabled.)

Quote:Applicable Objects : All objects that are from a domain that serves more than one object for the page (i.e. if only a single object is served from a given domain it will not be checked)

What is checked: The response header contains a "keep-alive" directive or the same socket was used for more than one object from the given host

Ignore the lack of CDN for now, let's first roll up your sleeves and do this basic optimization work first, then let's see where we are.Let's get rid of all of the F grades you are receiving, let's turn those into straight A grades first.
Find all posts by this user
Quote this message in a reply
Post Reply 


Forum Jump:


User(s) browsing this thread: 2 Guest(s)