Salta al contenuto principale
Versione: 1.x

Prestazioni del Server

Le prestazioni del server influenzano direttamente la velocità e la reattività della tua applicazione WCPOS. Questa guida ti aiuta a monitorare, diagnosticare e ottimizzare le prestazioni del server utilizzando le metriche integrate e le tecniche di risoluzione dei problemi.

Comprendere le Metriche del Server

WCPOS raccoglie automaticamente le metriche delle prestazioni del server con ogni operazione di fetch dei dati (prodotti, ordini, clienti, ecc.). Puoi visualizzare queste metriche nella schermata Logs.

Metriche Tipiche del Server

{
"total": "24692",
"execution_time": "76.64 ms",
"server_load": "[15.20605469,16.16357422,16.76806641]"
}

Analisi:

  • total - Numero di record elaborati (24.692 ID prodotto)
  • execution_time - Tempo necessario per completare l'operazione (76,64 millisecondi)
  • server_load - Carico medio del server per 1, 5 e 15 minuti

Spiegazione del Carico del Server

Il carico del server rappresenta il carico medio del sistema su diversi intervalli di tempo:

  • Primo valore - Media a 1 minuto (15.21)
  • Secondo valore - Media a 5 minuti (16.16)
  • Terzo valore - Media a 15 minuti (16.77)

Interpretazione del Carico

I valori di carico del server possono essere fuorvianti e dovrebbero essere interpretati con attenzione:

I Valori di Carico Possono Essere Fuorvianti

Le medie del carico del server non sempre corrispondono direttamente alle prestazioni. Un server con valori di carico elevati (15+) può comunque essere molto reattivo se ha risorse sufficienti ed è ben ottimizzato. Concentrati sui tempi di esecuzione piuttosto che sui valori di carico da soli.

Linee guida generali:

  • Carico relativo ai core della CPU - Un carico di 8.0 su un server a 8 core significa utilizzo completo
  • Sostenuto vs. temporaneo - Picchi brevi sono normali, un carico elevato sostenuto può indicare problemi
  • Le prestazioni contano di più - Un server reattivo con carico elevato è migliore di un server lento con carico basso

Cosa tenere d'occhio:

  • Tempi di esecuzione crescenti nel tempo
  • Carico che cresce costantemente senza spiegazione
  • Sia carico elevato CHE tempi di esecuzione lenti insieme

Riferimenti di Prestazione

Linee Guida sui Tempi di Esecuzione

OperazioneBuonoAccettabileScarsoCritico
Fetch del prodotto< 100ms100-500ms500ms-2s> 2s
Creazione ordine< 200ms200-800ms800ms-3s> 3s

Considerazioni sul Conteggio dei Record

Il tempo di esecuzione dovrebbe scalare ragionevolmente con il conteggio dei record:

// Buoni esempi di scalabilità
{"total": "100", "execution_time": "15.2 ms"} // 0.15ms per record
{"total": "1000", "execution_time": "89.4 ms"} // 0.09ms per record
{"total": "10000", "execution_time": "234.1 ms"} // 0.02ms per record

// Esempi di scarsa scalabilità
{"total": "100", "execution_time": "500.0 ms"} // 5.0ms per record
{"total": "1000", "execution_time": "8000.0 ms"} // 8.0ms per record

Diagnosi dei Problemi di Prestazione

Passo 1: Monitorare i Logs

  1. Apri Logs dal pannello di navigazione
  2. Esegui l'operazione lenta (sincronizza prodotti, crea ordine, ecc.)
  3. Cerca l'entry corrispondente nel log
  4. Espandi il contesto per vedere le metriche

Passo 2: Analizzare le Metriche

Tempo di esecuzione elevato + Carico del server elevato = Problema di risorse del server

{
"total": "5000",
"execution_time": "3500.0 ms",
"server_load": "[12.45, 11.23, 10.87]"
}

Soluzione: Aumentare le risorse del server o ottimizzare la configurazione del server

Tempo di esecuzione elevato + Carico del server normale = Problema di plugin/database

{
"total": "1000",
"execution_time": "2800.0 ms",
"server_load": "[1.23, 1.45, 1.67]"
}

Soluzione: Identificare i plugin lenti o ottimizzare le query del database

Tempo di esecuzione normale + Carico del server elevato = Sovraccarico generale del server

{
"total": "2000",
"execution_time": "150.0 ms",
"server_load": "[8.90, 9.12, 8.45]"
}

Soluzione: Ridurre il carico del server da altri processi o aggiornare le risorse

Problemi Comuni di Prestazione

1. Risorse del Server Insufficienti

Sintomi:

  • Carico del server costantemente elevato (> 4.0 su molti server)
  • Tempi di esecuzione lunghi in tutte le operazioni
  • Timeout frequenti

Soluzioni:

  • Aggiorna la CPU - Maggiori core gestiscono meglio le richieste concorrenti
  • Aumenta la RAM - Riduce l'I/O del disco e migliora il caching
  • Utilizza storage SSD - Migliora significativamente le prestazioni del database
  • Ottimizza le impostazioni PHP - Aumenta memory_limit, max_execution_time

2. Query del Database Lente

Sintomi:

  • Tempi di esecuzione elevati con carico del server normale
  • Recupero di prodotti/ordini particolarmente lento
  • Codici di errore relativi al database nei log

Soluzioni:

  • Abilita WooCommerce HPOS - Il miglioramento delle prestazioni del database più significativo
  • Utilizza la cache degli oggetti - Redis o Memcached se disponibili dal tuo host
  • Mantieni WordPress aggiornato - Gli aggiornamenti principali spesso includono ottimizzazioni del database
  • Limita le revisioni dei post - Aggiungi define('WP_POST_REVISIONS', 3); a wp-config.php

3. Interferenza dei Plugin

Sintomi:

  • Improvvisa degradazione delle prestazioni dopo aggiornamenti dei plugin
  • Operazioni specifiche molto più lente di altre
  • Tempi di esecuzione elevati con carico del server normale

Risoluzione dei problemi:

  1. Testa su staging - Disabilita tutti i plugin tranne WooCommerce e WCPOS
  2. Misura il baseline - Registra i tempi di esecuzione con plugin minimi
  3. Abilita gradualmente - Aggiungi i plugin uno per uno per identificare i colpevoli
  4. Controlla gli hook dei plugin - Cerca plugin che si interfacciano con le azioni di WooCommerce

Plugin problematici comuni:

  • Plugin SEO pesanti durante le operazioni di prodotto
  • Sistemi complessi di gestione dell'inventario
  • Plugin di analisi/tracciamento in tempo reale
  • Plugin personalizzati mal codificati

4. Configurazione di WordPress/WooCommerce

Sintomi:

  • Prestazioni inconsistenti
  • Errori di memoria nei log
  • Dashboard dell'amministratore lenta

Checklist di ottimizzazione:

  • Versione PHP - Utilizza PHP 8.0+ per migliori prestazioni
  • WooCommerce HPOS - Abilita l'Archiviazione degli Ordini ad Alte Prestazioni (vedi sotto)
  • Caching di WordPress - Abilita la cache degli oggetti se disponibile
  • Impostazioni di WooCommerce - Ottimizza le dimensioni delle immagini dei prodotti

Archiviazione degli Ordini ad Alte Prestazioni di WooCommerce (HPOS)

Il Maggiore Vantaggio di Prestazione

HPOS è uno dei miglioramenti delle prestazioni più significativi che puoi apportare per WooCommerce. Memorizza gli ordini in tabelle del database personalizzate anziché nella tabella dei post di WordPress, migliorando notevolmente le prestazioni per i negozi con molti ordini.

Benefici:

  • Query degli ordini più veloci - Ordini memorizzati in una struttura di database ottimizzata
  • Carico del database ridotto - Separa ordini da post/pagine
  • Migliore scalabilità - Gestisce in modo efficiente grandi quantità di ordini
  • Migliori prestazioni dell'amministratore - Schermate di gestione degli ordini più veloci

Come Abilitare:

  1. Vai a WooCommerce > Impostazioni > Avanzato > Funzionalità
  2. Abilita "Archiviazione degli ordini ad alte prestazioni"
  3. Segui il processo di migrazione

Scopri di più:

Migliori Pratiche di Monitoraggio del Server

1. Controlli di Prestazione Regolari

  • Revisioni settimanali - Controlla i log per tendenze di prestazione
  • Misurazioni di baseline - Registra i tempi di esecuzione normali
  • Monitoraggio durante i picchi - Monitora durante periodi ad alta affluenza

2. Imposta Avvisi di Prestazione

Monitora questi segnali di avvertimento:

  • Tempi di esecuzione > 1000ms costantemente
  • Carico del server > 5.0 per periodi prolungati
  • Errori di timeout frequenti nei log

3. Pianificazione della Capacità

Traccia le tendenze di crescita:

  • Crescita del conteggio dei record - Prodotti, ordini, clienti
  • Degradazione delle prestazioni - Come scala il tempo di esecuzione
  • Utilizzo delle risorse - CPU, memoria, utilizzo del disco

Strategie di Ottimizzazione del Server

1. Migliori Pratiche WordPress/WooCommerce

Abilita HPOS:

  • Il miglioramento delle prestazioni più impattante per WooCommerce
  • Vedi la sezione HPOS sopra per dettagli

Configurazione PHP (consulta il tuo host):

memory_limit = 512M
max_execution_time = 300
max_input_vars = 3000

Configurazione di WordPress:

// In wp-config.php - limita le revisioni dei post
define('WP_POST_REVISIONS', 3);

// Abilita la registrazione dei log di debug di WordPress se necessario
define('WP_DEBUG_LOG', true);

2. Ottimizzazioni a Livello di Hosting

Cache degli Oggetti:

  • Chiedi al tuo host la disponibilità di Redis o Memcached
  • Molti host WordPress gestiti forniscono questo automaticamente

Versione PHP:

  • Utilizza PHP 8.0+ per miglioramenti significativi delle prestazioni
  • La maggior parte degli host consente un facile cambio della versione PHP

Risorse del Server:

  • Assicurati di avere RAM adeguata (minimo 1GB, preferibilmente 2GB+)
  • Lo storage SSD offre prestazioni del database molto migliori rispetto ai dischi tradizionali

Quando Cercare Aiuto

Contatta il tuo fornitore di hosting o uno sviluppatore WordPress se:

  • Carico del server costantemente > 8.0 nonostante gli sforzi di ottimizzazione
  • Tempi di esecuzione > 5000ms per operazioni semplici
  • Errori di memoria che appaiono frequentemente nei log
  • Query del database che richiedono > 2 secondi costantemente

Fornisci loro:

  • Metriche del server dai tuoi log
  • Elenco dei plugin attivi
  • Specifiche del server (CPU, RAM, tipo di storage)
  • Versioni di WordPress e WooCommerce