Long Loads & Erratic TTFB

Hey guys,

I’m new here but there seemed to be a ton of great information going around on this forum so I’m here to ask for expert help. I’m trying to reduce page load times for my site Adventographer.com and running into issues with 500+ http requests and random erratic TTFB’s.

I host with Crocweb.com on lightspeed servers with SSD’s (although shared) and attribute my erratic TTFB’s (1-5 seconds) to the shared servers. but aside from that my load times are still high after trying all the optimizations i know.

It’s a SSL wordpress site running Fast Velocity Minify and WP Super Cache, i’ve enabled Gzip and optimized images… I’m looking for some expert advice on how i can clean this up and make sure we see faster load times (aside from removing Adsense entirely)

Thanks,

Patrick

I’d say there are two factors involved here: first, the slow initial run is filling up caches, which speed up the repeated ones ( whether system or application caches doesn’t really matter ), and there’s some intelligence at work trying to simplify your code. I’d’ve suggested pagespeed, but tha’t obvious from the file names.

I’m sure there are other reasons (:

Something looks very odd in your hosting.

Your site shows to be HTTP2 + ALPN, from an external view.

And, WPT waterfalls look more like HTTP1.

You’re hosting company looks to be someone call CrocWeb which has you running on a machine with many other sites.

Best guess about fixing your problems, change hosting.

How you approach this will depend on your technical expertise + site’s income production.

Best option, if your expertise supports this - Provision a dedicated server from somewhere like OVH + do your own admin.

Second best option will be look for true managed hosting for WordPress. I say “true” because this does not mean a company like WPEngine or GoDaddy or HostGator who all approach this by just telling you which plugins you can’t run.

Likely once your runtime environment (hosting) provides more stability, your site challenges will magically disappear.
[hr]
One other item. You’re site monetization includes running Ads from various Ad Networks.

Your current site tooling, blocks waiting for Ad Units to return from Ad Networks.

Blocks means, content renders after some or all your Ad Units return.

This means your site speed becomes dependent on the speed/stability of Ad Networks you’re using.

A good managed hosting company can work through this with you to provide direction about how you can retool your site to render content, independent of Ad Network speed/stability.

Thanks for the detailed reply. I’d like to think i’m a fairly technical person but administration of my own server is a bit out of my comfort zone at the moment… I have no qualms moving to a better host if that will see real gains… Suggestions?

So i did a little screwing around with my server settings, enabled PHP 7.1 for a decreased processing time (people say 500% faster), increased the innodes to 2000 from 1000 and dedicated a an extra 256GB of ram to PHP. seems to be responding better but the TTFB is still shit :confused:

Well you can change things all you want but the more third party resources your page has to load, the higher the impact will be on the TTFB. So either cut down on 3rd party stuff or find a way to load it in your page better.

I don’t know which PHP version you were running before but if it was 5.x and when you switched to PHP 7.x you haven’t noticed substantial decrease in TTFB then most probably the issues are:

  • database: your site either executes a lot of queries or some of them are slow,
  • HTTP request to third party resource done from PHP.

However if you were running PHP 7.0 and switched to PHP 7.1 then the problem is still open (PHP 7.1 doesn’t give similar performance improvement over PHP 7.0 as 7.0 over 5.x).

Number of resource to load effects total load time.

TTFB relates primarily to your hosting, so LAMP (Linux/Apache/MariaDB/PHP) tuning.

You’re running WordPress, so you can try this.

  1. Install Query Monitor plugin

  2. Set SAVEQUERIES to true in your wp-config.php

Look for huge numbers of broken HTTP requests or database thrash.

Recently I found an odd glitch between how WordPress calls it’s own API on WP.org which related to DNS… where… some DNS lookups simply failed, after a 5 second timeout.

After narrowing this down to DNS, I’ve changed all my LXD containers to…

a) Remove the massively broken systemd-resolved nonsense.

b) Change /etc/resolv.conf to “nameserver 127.0.0.1”

c) Run - resolvconf --disable-updates - each time containers reboots, so /etc/resolv.conf never changes.

d) Arrange for dnsmasq (blazing fast DNS resolution) to listen on 127.0.0.[1|53] to handle all DNS.

This has resolved many complaints I was having from clients about slow sites, especially when logged into the admin dashboard.

Query Monitor can surface many problem areas.

Also make sure Opcache is enabled + tuned well. http://167.114.29.137/wptools/ocp.php shows what you’re looking for. Lots of free memory slabs + keys.

Also run mysqltuner on a regular basis + fix any emitted diagnostics.

Few weeks ago, I went through a tuning cycle with latest mysqltuner + latest MariaDB on a high traffic site + got nearly 60% disk i/o reduction by fixing every single mysqltuner suggestion.

dnsmasq is the wrong tool for this - it provides a full suite of networking tools - do you need a running DHCP server?

Just install a caching bind DNS server.