XF 1.0 Real-World Page Loading Speed

This isn't so much a 'have you seen this feature' post as one that goes some way to explaining why interacting with XenForo is such an immediate, pleasurable experience.

The following is screen-grabbed from Google Webmaster Tools.

google-webmaster-tools-page-load-speed-png.420
 

Attachments

  • Google Webmaster Tools Page Load Speed.webp
    Google Webmaster Tools Page Load Speed.webp
    59.1 KB · Views: 5,973
External images that require additional DNS lookups can slow down page load time for first time requests.

I've no idea about the details, but some signatures seem to calculate Trophies awarded and other information. Occasionally I can see the image forming.

I am not suggesting a change, and am not complaining, but think the issue should at least be acknowledged. If for no other reason to allow us to determine how these types of things will affect our own sites.
 
the only slowdown you should get with extra sig images, is the images loading. they'll sit unloaded for 100ms or less while they are generated and then they'll load as a normal image. If you're seeing the image forming, you have a bigger issue. all that happens when your browser tries to load one of them, is the server gives it a ~2kb file. if that's a noticeable load time then something is wrong
 
I have noticed a significant slow down since people have been using sigs such as yours.
As disjunto mentioned, this is mostly do to your browser waiting while the signature images are generated. The script for the images is fetching data from XenForo, processing that data, and then dynamically drawing an image. This takes some time, and once it is completed, your browser still has to download the image from the server. So yes, dynamic signature images like these (and any user-added images, for that matter), can artificially slow down the page-loads and make it appear like the site is slow, when in reality the apparent slowdown is being caused by an external server. :)

If you disable signatures, the site will probably be noticeably faster. :)
 
As disjunto mentioned, this is mostly do to your browser waiting while the signature images are generated. The script for the images is fetching data from XenForo, processing that data, and then dynamically drawing an image. This takes some time, and once it is completed, your browser still has to download the image from the server. So yes, dynamic signature images like these (and any user-added images, for that matter), can artificially slow down the page-loads and make it appear like the site is slow, when in reality the apparent slowdown is being caused by an external server. :)

If you disable signatures, the site will probably be noticeably faster. :)
I think everyone is caching them now though. Pretty much just grabbing a static 2kb file :D
 
I think everyone is caching them now though. Pretty much just grabbing a static 2kb file :D
How can they be doing that when it is not static? The sigs are dynamic and changing as people post, get likes etc.
I wondered the same thing but I was afraid to ask in case it was a really stupid question. :D
In the case of my script, the system stores an XML file and a generated image for each user who has ever used the script. When a request is made for the image, it checks against the XML file to see if the like/post/trophy count has changed since the last generated image. If it has, it generates a new image and saves that image. But if it hasn't, it simply gets the saved generated image from the filesystem. This saves time because none of the intensive GD drawing code is run. No point in generating a new image for each request if the "old" one is still valid. :)

It saves time in theory, at least. I haven't actually done any performance testing to see how much time it really saves. :)
 
How can they be doing that when it is not static? The sigs are dynamic and changing as people post, get likes etc.
Unless you're the unlucky person who tries to grab the file when the cache has expired, you're only hitting about 2 lines of php which is just checking the cache.


It saves time in theory, at least. I haven't actually done any performance testing to see how much time it really saves. :)
On quick testing for me, I went from 250ms to 80ms per load attempt (clearing browser cache each time). This is with my very simple sig design
 
I've disabled the generation of other people's signature. Let's see if it speeds things up. Although, firebug told me that this page loaded in 10 seconds, I thought it was slightly longer than that.
 
This isn't so much a 'have you seen this feature' post as one that goes some way to explaining why interacting with XenForo is such an immediate, pleasurable experience.

The following is screen-grabbed from Google Webmaster Tools.
wow very fast don't think i see many forums with <2 seconds from google web master tools

my forums are around 2.2-4.8 seconds per page with vB 3.8.6 and openx, flash banner ads but static files off loaded to maxcdn
 
In the case of my script, the system stores an XML file and a generated image for each user who has ever used the script. When a request is made for the image, it checks against the XML file to see if the like/post/trophy count has changed since the last generated image. If it has, it generates a new image and saves that image. But if it hasn't, it simply gets the saved generated image from the filesystem. This saves time because none of the intensive GD drawing code is run. No point in generating a new image for each request if the "old" one is still valid. :)

It saves time in theory, at least. I haven't actually done any performance testing to see how much time it really saves. :)

I edited your code and even if the stats if the image was created in the past 3min it will not be re-generated... I may increase this number but I am not sure ATM...
 
Back
Top Bottom