Jump to content


Poor Builder Performance & Speed Results

caching speed page size optimization builder

This topic has been archived. This means that you cannot reply to this topic.
4 replies to this topic

#1 chrisbryant

chrisbryant

    New Member

  • Members
  • Others: BackupBuddy
  • 3 posts

Posted 08 January 2013 - 07:03 PM

Hi everyone,

I've been making sites upon Genesis, Headway, Thesis, and just discovered Builder.
I'm very interested in using it. In fact, I can't believe I didn't know about it sooner. It looks great!

However, I'm concerned about the overall performance of the Builder sites:
  • it seems to make close to double the average amount of http requests when I compare with the other frameworks I use.
  • I'm puzzled over why very few Builder-based sites seem to be taking advantage of browser caching plugins?
My experiment.

This is not a rigid scientific experiment.
But I figured it would give me real world results if I did a comparison test of a cross-section of sites built on Builder, Genesis, and Headway Offical & Showcased sites.
I used GTMetrix to test.

Performance Grade
I've tested close to 20 Builder-based sites in total.
They consistently have the lowest overall performance grades (via GTMetrix) when compared to Genesis and Headway sites that I randomly selected from among their showcase sites.

A Performance Grade is not the definitive indiciation of end-user experience/load times.
But it is nonetheless, a snapshot of the number of requests, and the typical load times.

*I've attached a JPG sampling of the tests so you can see what I'm seeing (without all the details of course).

In the end, it begs a few questions:

Q: Why is it that Builder sites are not using caching to make their sites load that much faster?
Is there some aspect of incompatibility between Builder and W3TC, or SuperCache (or with Backup Buddy/Loop Buddy)?

Q: Is there a list of filters that can be added to a Builder Child Theme to *not* load unnecessary scripts? (Or somehow minimize the total number of requests).

Q: Does Builder have some sort of internal caching feature that makes it load quickly (for the number of requests), but that is not reflected in the results of a GT Metrix test?

Q: Do you, as a Builder developer find that your sites are generally slowed down when using Builder?

Please note my intention here: I would prefer to use Builder (support, reliability, reputation, features).
However, at the end of the day - speed counts.

Thanks for input.

Chris

Builder-Comparison.jpg

#2 Sridhar Katakam

Sridhar Katakam

    Advanced Member

  • Members
  • Others: BackupBuddy
  • 22,262 posts

Posted 08 January 2013 - 11:28 PM

Welcome to the forum!

Some time back Chris Jean, developer of Builder wrote a detailed response to a similar question in Builder forum. As it is members-only, I have taken a screenshot and have shared it here. Please go through that.

In the meantime, I shall bring your question to his attention so he may add further inputs, if necessary.

#3 chrisbryant

chrisbryant

    New Member

  • Members
  • Others: BackupBuddy
  • 3 posts

Posted 08 January 2013 - 11:49 PM

Thank you so much Sridhar,

I'll look over your screenshot and welcome any wisdom and insight Chris Jean is willing to share.

#4 Chris Jean

Chris Jean

    Code Monkey

  • Administrators
  • 3,341 posts

Posted 09 January 2013 - 10:51 AM

Why is it that Builder sites are not using caching to make their sites load that much faster?
Is there some aspect of incompatibility between Builder and W3TC, or SuperCache (or with Backup Buddy/Loop Buddy)?

There is nothing specific about Builder that prevents caching plugins from functioning. I've seen a very large number of Builder sites running caching plugins (both W3 and WP Super Cache primarily), and none of them reported any issues with regards to the caching functionality. Some people simple don't use caching plugins. Additionally, even if a site does use a caching plugin, that doesn't mean that the site makes use of the script and stylesheet concatenation features (this can be seen on ithemes.com).


Is there a list of filters that can be added to a Builder Child Theme to *not* load unnecessary scripts? (Or somehow minimize the total number of requests).

There is a builder_add_stylesheets action that causes the rendering of the various stylesheets. Hooked functions can be removed from this action in order to remove the various stylesheets.


Does Builder have some sort of internal caching feature that makes it load quickly (for the number of requests), but that is not reflected in the results of a GT Metrix test?

I'm not quite sure what you mean by this question. The first part of the question makes it sound like you are asking about page load time, but the parenthetical portion clarifies that you are asking about the number of requests. The number of requests is simply that, the number of requests. If a document lists six external stylesheets, then the browser will load that number. There isn't anything that even a script can do to change that (other than loading additional external documents). So, there isn't any magic that Builder attempts to do to reduce this.

Currently, Builder does load a number of stylesheets and, if the responsive feature is being used, a couple of scripts. This does add to the number of HTTP requests made when first loading the site. There is a reason for the number of requests being made; it isn't simply carelessness. While I want to reduce the number of files to be loaded, there are some technical challenges associated with doing this, which is why things are the way that they are. I keep playing around with different ways around this, but each time, I run into situations that will either confuse users (due to requiring them to take action after modifying their stylesheet) or will actually slow things down (by having the code check for modified files in order to trigger regeneration of a cache). Just the same, I keep looking for solutions that will work for everyone while also achieving the end goal of actual performance improvement.


As you can likely tell from the post Sridhar linked you too, I have a penchant for writing long, exhaustive posts. Unfortunately, I have a couple big releases that I'm finishing up right now, and can't delve any deeper today. If you require a more comprehensive response, would you be willing to wait until the beginning of next week to receive it?

#5 chrisbryant

chrisbryant

    New Member

  • Members
  • Others: BackupBuddy
  • 3 posts

Posted 09 January 2013 - 02:41 PM

Hi Chris,

Sorry for mixing up multiple questions in one question.
I think what you're seeing (in my post) reflects a bit of my own lack of knowledge when it comes to the many the factors contributing to page load times.

Regarding the number of http requests: your answer (and the post Sridhar linked to) explained that and it makes perfect sense. That is, you're striving to find a healthy balance between ease-of-use for the user, and code efficiency. Because of the nature of Builder, I understand the priority always has to fall on the side of simplicity for your users.

Regarding the caching plugins. I guess I was thrown off by the fact that Builder users (that I tested in gtmetrix) were consistently not using caching.
It did occur to me that, as you suggest,  this was just coincidental and that maybe those site developers didn't know about, or want to use caching plugins.
But when I saw that iThemes.com, Webdesign.com, and CoryFreeman.com (obviously, all expert-level sites) were also not using caching, I began to wonder if there was something about Builder that prohibited using caching plugins.

About the internal caching question:
Again - sorry for my poor wording. What I think I was wondering was if Builder did something like gzip compression, minifying of CSS, or anything that someone might otherwise use W3TC for - but right from within Builder.

So, I was basically wondering if you had done something within the framework to "speed things up" and "minify" files right within Builder.

I think this question might be moot at this point, and is essentially covered by your overall answer.

That said, I want to express my thanks for your reply. It's not often a customer gets to hear from the people making the product. That kind of support is one of the reasons I'm attracted to Builder.


Chris