XF 2.1 smileys take over 7 seconds to load

Joao Prates

Active member
Hi,

I would appreciate if anyone could chime in and help diagnosing this problem on our server, it's getting us crazy.
We can't put our finger on when exactly it started, but it is recent, and afaik nothing changed on the server side, so it's a bad surprise for us.

Right now I have consistent reports from several users, and I can attest the same myself, sometimes it gets to 9 seconds to load the smileys, it's crazy.

The worst part is that no matter how many times you wait for them to load, the second click will only be fast if you do it on the same exact page, i.e. if you go to another thread and click the damn smiley box once again, you'll wait 7+ seconds again as well.

We're running the latest official versions:

SERVER SIDE

XenForo v2.1.10 Patch 2

1595343968900.png

1595344065817.png

EXAMPLE CLIENT SIDE

1595344195547.png

1595344229991.png

Many thanks in advance!
 
I have improved the cache already, it's faster now, the webpagetest report comes back better, albeit it comes different each time it runs.
However the smileys still take ages to load, and it still requires reload for each url we go to, this is the part for me it's harder to understand.

The smileys are always the same, why can't the PHP code just put them in cache somehow for each time a user needs them?
Is it impossible to do?

p.s. - I don't know PHP
 
I think I nailed it.

It was the StatCounter code inserted into the base page template that was taking too much time while loading the smileys.

I experimented removing the StatCounter code and voilá, it's fast loading the emoticons once again.

Recently StatCounter added a feature a new feature which I activated for more granular history and that was the thing hitting performance.

A big thanks to @Kirby that by suggesting the web page performance report triggered the search for bottlenecks in the reports which led to the finding.
 
Fur future reference, disabling add-ons and reverting to a completely default unedited style is always the quickest way to rule out issues caused by third party code.

It's the first thing we advise customers to do when they submit a ticket.
 
Top Bottom