10

I have developed a joomla 3.2 site. I have tested it with webpagetest.org and i got following results

First Byte Time-F
Keep-alive Enabled-A
Compress Transfer-A
Compress Images-A
Progressive JPEGs-F
Cache static content-A
Effective use of CDN-yes

link for the result-http://www.webpagetest.org/result/140205_RX_DE5/1/details/ www.webpagetest.org/result/140205_RX_DE5/

I have enabled cdn on my site.Now, I want to reduce my site's first byte time as i'm getting F in First byte time. how can i improve my site's performance?? And, how can i convert images to progressive images as i also got F in progressive JPEGs??

Here's link to my site-http://www.guru99.com

Please help me to improve site performance.

Uooo
  • 6,204
  • 8
  • 36
  • 63
Tushar Korat
  • 591
  • 2
  • 7
  • 21
  • I can't imagine the First Byte Time of a CMS as big as Joomla being top notch seeing as it's quite a heavy CMS. Test the Joomla.org site and maybe also someone like Yootheme who are a very efficient company to see what their results are. – Lodder Feb 05 '14 at 12:38
  • Just out of curiosity, for your cdn, did you simply create a subdomain? >> *cdn.guru99.com* – Lodder Feb 05 '14 at 17:00

6 Answers6

4

I had about 0.8/1s ttfb with shared hosting. Moved to VPS changed service from apache to nginx and PHP-FCGI

Still was not enought. TTFB was 250/400 Searched the web for 3 days. Without any result, in lowering ttfb.

Till i found this: http://help.directadmin.com/item.php?id=567

OpCache Help me to reduce ttfb to 0.12/0.2 ms for my joomla site.

Donatas
  • 41
  • 1
  • And i am using gzip_static on; on nginx that help allot. – Donatas Apr 25 '15 at 12:20
  • Could you add more details about the solution provided at the inserted link? – abarisone Apr 25 '15 at 12:30
  • add more details? There is everything written on a given URL. gzip_static on; function its very powerful. Read more about it: http://nginx.org/en/docs/http/ngx_http_gzip_static_module.html. I used Zopfli to archive all js/css files. Just enter Your public html folder via SSH and use commands to archive all js files # find . -type f -name "*.js" -exec zopfli -i1000 {} \; and for css # find . -type f -name "*.css" -exec zopfli -i1000 {} \; – Donatas Jun 07 '15 at 11:13
  • And i could add one more thing When i changed Cloudflare CDN to Incapsula was a big step up on a site speed for my page. Here is how the page is loding now http://tools.pingdom.com/fpt/#!/ebcjws/www.ekavet.com http://www.webpagetest.org/result/150607_AB_DDV/ – Donatas Jun 07 '15 at 11:40
3
  1. As mentioned this is mostly about about two things your server and your application.

  2. You appear to be on a shared host/ip address at Hivelocity so this will affect your TTFB. For a shared host though 619 ms First Byte Time is not horrible. Remember an A is only 192ms, so getting a F is half a second more.

  3. You're using a Gantry framework based template which is probably one of the heaviest around for Joomla templates (although none of the Joomla commercial providers are really lightweight). RocketTheme provide their own cache extension for use with their templates, you may want to try that although I'm not sure how that will impact the rest of your stats.

For clients that require it we setup dedicated web and database servers, i.e. separate machines for each function this allows you to push Joomla much further. For in-house non-Joomla apps we build we've been trying HHVM with good results as well (HHVM still has a few outstanding issues with larger projects).

For the progressive JPEG, we've used Optim in the past, it's also on GitHub.

The thing to remember is the TTFB is just a metric (and IMHO a valueless one) the more important metric is page ready. Have a look at this CloudFlare post.

Craig
  • 9,335
  • 2
  • 34
  • 38
  • We are using dedicated server... could this be an issue with server settings – Tushar Korat Feb 07 '14 at 11:56
  • It could be, but remember it's just about the first byte returned not anything useful like how long does the entire page take to be delivered. Things like application (joomla) caches won't really affect it, only bigger boxes, more ram etc. See the CloudFlare link I added. – Craig Feb 08 '14 at 09:16
3

I have to admit, your question inspired me so I've spent the last 2 days working on optimization. After extreme testing I got the First Byte Time to B. To do this, I ended up using the JCH Optimize Plugin. As for the paramaters, I enabled everything apart combining the CSS and JS as this resulted in a console error.

It reduced the loading time for the page by a fare amount. I also enabled the G-Zip option in the Joomla Global Configuration, however I turned Joomla's built in caching off as it can cause problems with some extensions.

As for the Images, any .jpg images that I was using, I opened in Photoshop and did CTRL + Shift + ALT + S and selected the "Progressive" option. One done and uploaded, I ran the test again and got an A for Progressive JPEGs.

Try doing the same and see what the outcome is. Hope this helps

Lodder
  • 19,758
  • 10
  • 59
  • 100
2

TTFB is related mainly to 2 things: Your server and your application.

The server might have issues that are causing a high TTFB, for example, it might have some complex firewall rules or some routing issues. You will need to check with your hosting company.

As for reducing the TTFB for Joomla, make sure you enable caching (beware though, Joomla's caching comes at an expense).

itoctopus
  • 4,133
  • 4
  • 32
  • 44
2

I agree with user cppl that TTFB is not necessarily a meaningful measurement and was going to link to the same article on Cloudflare. The article makes this point: 'From the end user perspective TTFB is almost useless ... it's actually negatively correlated with the download time: the worse the TTFB the better the download time.'

In most cases, getting your markup onto the page as quickly as possible for the user to look at while other files may be loading in the background is a good way of making the user feel like your site is 'performing' well, even if a dev might judge performance by slightly different criteria.

To answer your question on how to improve site performance, I ran your site through YSlow and discovered a few things that should improve site performance from the perspective of the end user:

  • There are HTTP requests for 26 external javascript scripts and 15 external stylesheets. Have you considered combining at least some of these into fewer files? One large .js file can be preferable to multiple small .js files, and the same with CSS files.
  • Move your javascript files to the bottom of your index page (just inside the body tag) instead of loading them in the document head. In some exceptional cases you may need a particular .js file to load before the page markup but in the majority of cases it is a good idea to have javascript loaded at the bottom of the page, allowing the markup to be rendered on the page first.
  • Minify your javascript and CSS files where possible.
Candlejack
  • 448
  • 10
  • 23
0

If your web page is retrieving huge amount of data, you should defer loading the huge data using ajax or update panels. This will certainly reduce the TTFB.

Shadi Alnamrouti
  • 11,796
  • 4
  • 56
  • 54