• Opgelost Regio Online

    (@regioonline)


    Ik worstel al maandenlang met een probleem, waardoor het databaseprocess mariadb.service wordt platgelegd en ik de foutmelding ‘Fout bij het maken van een databaseconnectie’ krijg.

    Dit probleem begon ergens eind vorig jaar toen ik de website nog op een unmanaged VPS had draaien met 16 CPU cores, 60GB RAM en 2TB opslag (Strato). Nadat beheerder VPS iets anders ging doen moest ik (tijdelijk) verhuizen naar shared (24 CPU core en 16GB) bij Vimexx.

    Thema:
    Newspaper van tagdiv
    gebruikt eigen composer – plug-ins td-composer en td-cloudlibrary

    Belangrijkste (zwaardere) plug-ins:
    – Rank Math (SEO)
    – FS-Poster (autopost naar Facebook)
    – WP Media Folder (schil om Media Library) + cloud add-on + gallery add-on

    Overig:
    -Askimet
    – AllAccessible
    – Cookie Notice & Consent
    – Health Check & Troubleshooting
    – Standaard uitgelichte afbeelding
    – WP Consent API
    – WP Super Cache
    – WPS Hide Login

    – Query Monitor (voor debuggen database query’s)

    WordPress versie: 6.8.2
    PHP versie: 8.4
    PHP Memory limit: 256M

    In wp-config:
    wp-memory-limit = 256M
    wp-max-memory-limit = 512M

    Database: Innodb
    Groote: 3,2GB waarvan postmeta tabel 2,6GB

    Website is een nieuwssite en dynamisch. Dagelijks 20+ nieuwe posts. Afbeeldingen worden via WP Media Folder cloud add-on vanuit Google Drive geserveerd.

    Wat gaat er fout en wanneer:

    Als er in de backend nieuwe posts geplaatst worden gebeurt het 2 to 3 keer op een dag dat de databseservice wordt platgelegd. Nu bij Vimexx start de binnen 20 seconden opnieuw op, maar op de VPS moest dat via SSH. Er was nog geen script voor autorestart van de mariadb service.

    Ik werkte met WP Rocket als caching plug-in, maar het probleem werd hiermee steeds groter. Ik moet eerst via FTP caching plug-in uitschakelen en dan werkt de database pas weer. Nu tijdelijk het bij het thema geadviseerde WP Super Cache, maar hier ging het ook al fout mee. Pas na uitschakelen via FTP werkt de site weer en kan ik plug-in weer inschakelen.

    Inmiddels van plug-ins (apart van elkaar uiteraard), WP Rocket (betaalde versie), WP Super Cache, WP Fastest Cache en W3 Total Cache geprobeerd.

    Ook los van de plug-ins of juist in combinatie daarmee vanuit server OPcache, Varnish cache en Redis Object Cache (incl. de plug-in) geprobeerd. Allemaal zorgen ze voor het verbreken van de verbinding met de database.

    Met Query Monitor inmiddels meer inzicht in het aantal db query’s gekregen. Door wat aanpassingen in plug-ins is het aantal query’s in de backend bij een nieuwe post 137. Bij het openen van een pagina in de backend 459.

    Ik heb supporttickets geschreven aan alle plug-in bouwers en de themabouwer. Deze laatste heeft als advies gegeven een staging site te maken om te testen wat ik nog kan aanpassen.

    1. het thema Newspaper is best zwaar
    2. de plug-ins WP Media Folder, FS-Poster en Rank Math zijn ook zwaarder
    3. met inmiddels 50.000+posts besef ik dat de database (met name postmeta) enorm groot is
    4. postmeta tabel wordt aangevuld met regels uit diverse plug-ins
    5. Query Monitor geeft ook soms dubbele query’s aan (van 2 tot zelfs 1200)

    Ik besef dat ik hier een een specifiek en misschien wel uitzonderlijk probleem voorleg, maar na 8 maanden hoop ik op aanwijzingen, zoekrichtingen en mogelijk zelfs oplossing van deze community te mogen ontvangen.

    Alle inzichten zijn welkom en worden gewaardeerd, evenals alle (kritische) vragen en/of opmerkingen?

    De pagina waar ik hulp bij nodig heb: [log in om de link te zien]

1 reactie aan het bekijken (van in totaal 1)
  • Thread starter Regio Online

    (@regioonline)

    Het probleem bleek met name te zitten in een niet geoptimaliseerde postmeta tabel, die een overhead van 1,9GB had. Dat is voor zover ik heb kunnen achterhalen lege ruimte, die de databasetabel gereserveerd heeft. Na de tabel te hebben geoptimaliseerd in phpMyAdmin is de tabel van 2,6GB teruggebracht naar 287MB. Nogal en verschil.

1 reactie aan het bekijken (van in totaal 1)

Je moet ingelogd zijn om op dit onderwerp te reageren.