Ένα WordPress site με 50 επισκέπτες τη μέρα δεν θα έπρεπε να φτάνει το όριο CPU του hosting — κι όμως συμβαίνει. Το πρόβλημα δεν είναι πάντα η επισκεψιμότητα, αλλά τι τρέχει στο παρασκήνιο ενώ κανείς δεν το βλέπει.
Τι σημαίνει «υψηλή χρήση CPU» στο hosting
Σε semi-dedicated hosting κάθε λογαριασμός έχει συγκεκριμένο όριο CPU — συνήθως εκφράζεται ως ποσοστό επεξεργαστικής ισχύος ή ισοδύναμο αριθμό CPU cores. Όταν το WordPress ξεπερνά αυτό το όριο, ο server αρχίζει να περιορίζει (throttle) τα requests: οι σελίδες αργούν.
Το σφάλμα 508 συνδέεται κυρίως με το Entry Processes limit — πόσα ταυτόχρονα requests μπορούν να εισέρχονται στο περιβάλλον του λογαριασμού. Όταν χτυπάει CPU ή I/O limit, συνήθως το site απλώς επιβραδύνεται. Τα 500/503 σχετίζονται περισσότερο με memory ή process limits.
Η CPU καταναλώνεται κάθε φορά που εκτελείται PHP κώδικας — queries στη βάση, επεξεργασία δεδομένων, κλήσεις API. Αν αυτά τρέχουν συνεχώς ή αναποδοτικά, το όριο εξαντλείται γρήγορα.
Οι τέσσερις κρυφοί καταναλωτές CPU
1. Cron jobs που εκτελούνται κάθε λίγα λεπτά
Το WordPress έχει ενσωματωμένο σύστημα cron (wp-cron.php) που ελέγχει αν υπάρχουν προγραμματισμένες εργασίες σε κάθε φόρτωση σελίδας. Αν έχεις plugins που προσθέτουν δικά τους cron jobs — backups, imports, email campaigns, checks για ενημερώσεις — μπορεί να τρέχουν πολύ πιο συχνά από όσο χρειάζεται.
Για να δεις ποια cron jobs τρέχουν, εγκατέστησε το plugin WP Crontrol. Θα δεις λίστα με όλες τις προγραμματισμένες εργασίες και τη συχνότητά τους. Αν βλέπεις tasks που επαναλαμβάνονται κάθε 1–5 λεπτά χωρίς λόγο, θέλει έλεγχο.
Tip: Απενεργοποίησε το wp-cron.php από το παρασκήνιο και ενεργοποίησέ το ως πραγματικό cron job από το cPanel → Cron Jobs, να τρέχει ανά 5–15 λεπτά, ανάλογα με τις ανάγκες του site σου. Αυτό μπορεί να μειώσει το περιττό overhead.
2. Database queries χωρίς index
Κάθε query που ψάχνει σε χιλιάδες γραμμές χωρίς index καταναλώνει CPU. Το συνηθέστερο σενάριο: plugins που αποθηκεύνουν logs, analytics ή session data στη βάση και κάνουν SELECT σε πίνακες με 100.000+ εγγραφές.
Για να εντοπίσεις slow queries, εγκατέστησε το plugin Query Monitor. Ενεργοποίησέ το, φόρτωσε μερικές σελίδες και κοίτα την καρτέλα «Queries by Component». Αν βλέπεις queries που παίρνουν πάνω από 0.5 δευτερόλεπτα, είναι υποψήφιοι.
Μεγάλοι πίνακες από ενεργά plugins που αποθηκεύουν logs, sessions ή analytics μπορεί να επιβαρύνουν σημαντικά τη βάση. Μπες στο phpMyAdmin και ψάξε πίνακες με ονόματα plugins που δεν χρησιμοποιείς πια — συνήθως περιέχουν το όνομα του plugin στο όνομα του πίνακα (π.χ. wp_pluginname_logs). Αν είναι logs ή cache και είσαι σίγουρος ότι δεν χρειάζονται, μπορείς να τους διαγράψεις — αλλά πάντα μετά από backup.
3. External HTTP requests που κολλάνε
Πολλά plugins κάνουν HTTP requests σε εξωτερικές υπηρεσίες — license checks, CDN sync, social media APIs. Αν ο απομακρυσμένος server αργεί ή δεν απαντά, το WordPress περιμένει (timeout) κρατώντας PHP workers και entry processes απασχολημένα.
Το Query Monitor δείχνει και αυτά στην καρτέλα «HTTP API Calls». Αν βλέπεις requests που παίρνουν 5+ δευτερόλεπτα ή αποτυγχάνουν, ψάξε ποιο plugin τα κάνει και δες αν μπορείς να τα απενεργοποιήσεις.
4. Bots και uncached requests
Τα bots (crawlers, scrapers, κακόβουλα ή όχι) και τα uncached requests είναι από τις συχνότερες αιτίες υψηλής χρήσης CPU στην πράξη. Ένα bot που σαρώνει το site σου κάθε λίγες ώρες, ή χρήστες που φορτώνουν σελίδες που δεν έχουν περάσει από cache (π.χ. WooCommerce AJAX, searches, filters), αναγκάζουν το WordPress να εκτελεί πλήρη PHP και database queries κάθε φορά.
Φρόντισε να είναι σωστά ενεργοποιημένο το LiteSpeed Page Cache, ώστε όσο το δυνατόν περισσότερα κανονικά page requests να εξυπηρετούνται από cache χωρίς να εκτελείται κάθε φορά PHP και MySQL. Ο LiteSpeed Crawler μπορεί να κρατά την cache «ζεστή», αλλά καταναλώνει και ο ίδιος πόρους και δεν συνιστάται να ενεργοποιείται χωρίς έλεγχο σε shared/semi-dedicated περιβάλλοντα.
Για τα bots, μπορείς να ελέγξεις τα access logs από το cPanel → Raw Access και να δεις ποιοι user agents κάνουν πολλά requests — αν είναι κακόβουλοι, μπορείς να τους μπλοκάρεις μέσω .htaccess.
Πώς να μειώσεις τη χρήση CPU άμεσα
Ενεργοποίησε object cache
Το WordPress κάνει τα ίδια queries ξανά και ξανά σε κάθε φόρτωση σελίδας. Το LiteSpeed Cache plugin υποστηρίζει object cache όταν υπάρχει διαθέσιμο Memcached ή LSMCD στον server.
Στο plugin, πήγαινε στο Cache → Object και ενεργοποίησέ το. Αυτό αποθηκεύει αποτελέσματα queries στη μνήμη και μειώνει σημαντικά τα database queries.
Περιόρισε τα post revisions
Κάθε αποθήκευση άρθρου δημιουργεί revision. Πρόσθεσε στο wp-config.php:
define('WP_POST_REVISIONS', 3);
Για να διαγράψεις τα παλιά revisions, το ασφαλέστερο είναι να χρησιμοποιήσεις plugin όπως το WP-Optimize, που διαγράφει revisions μαζί με τα σχετικά metadata. Αν προτιμάς χειροκίνητη διαγραφή, κάνε πρώτα backup της βάσης.
Απενεργοποίησε τα pingbacks/trackbacks
Κάθε pingback που δέχεται το site σου εκτελεί PHP και query. Πήγαινε στο Settings → Discussion και ξετσέκαρε το «Allow link notifications from other blogs».
Πότε το πρόβλημα είναι το πακέτο hosting
Αν έχεις κάνει όλα τα παραπάνω και το site εξακολουθεί να χτυπά το όριο CPU με φυσιολογική κίνηση, μπορεί να χρειάζεσαι περισσότερους πόρους. Σε semi-dedicated hosting με shared CPU cores, ακόμα και βελτιστοποιημένο WordPress μπορεί να φτάσει το όριο αν έχει πολλά συγχρονικά requests ή resource-intensive plugins — π.χ. WooCommerce με βαριά φίλτρα, αναζητήσεις, AJAX requests και μεγάλο όγκο δεδομένων.
Η λύση δεν είναι απαραίτητα αλλαγή παρόχου — σε πολλές περιπτώσεις αρκεί αναβάθμιση σε πακέτο με dedicated CPU cores, όπου δεν μοιράζεσαι την επεξεργαστική ισχύ με άλλους λογαριασμούς.
Συμπέρασμα
Η υψηλή χρήση CPU στο WordPress μπορεί να προέρχεται από πραγματική επισκεψιμότητα, bots, uncached requests, WooCommerce AJAX, searches και filters — αλλά συχνά οφείλεται σε cron jobs που τρέχουν κάθε λίγα λεπτά, queries χωρίς index, ή HTTP requests που κολλάνε. Με τα σωστά εργαλεία (Query Monitor, WP Crontrol) εντοπίζεις τους ένοχους σε λίγα λεπτά. Το object cache και ο έλεγχος των cron jobs είναι οι δύο αλλαγές που δίνουν τη μεγαλύτερη βελτίωση με το λιγότερο κόπο.


