Gestisci i picchi di utilizzo della CPU nell'anteprima di Nextcloud con una coda pianificata.

Se il carico della CPU del tuo server Nextcloud aumenta improvvisamente durante la creazione delle anteprime, spesso significa che il carico di lavoro si presenta in modo improvviso: gli utenti aprono cartelle ricche di immagini, viene indicizzata una libreria di grandi dimensioni oppure un processo di anteprima tenta di generare più dimensioni di quelle necessarie. Installa l'app Generatore di anteprime di Nextcloud, lasciala elaborare i file nuovi e modificati secondo una pianificazione controllata e riduci le dimensioni delle anteprime non necessarie. Questo sposta il lavoro al di fuori delle sessioni di navigazione più intense; tuttavia, non rende gratuita la conversione delle immagini né elimina il carico di lavoro iniziale necessario per recuperare il ritardo.

Questi passaggi seguono il file README del Generatore di anteprime e la documentazione di Nextcloud 35, verificata il 10 ottobre 2026. Conferma la compatibilità della tua versione nell'App Store di Nextcloud. Il file README indica i file crittografati come non supportati.

Perché la generazione dell'anteprima influisce sull'utilizzo della CPU?

Nextcloud crea miniature su richiesta degli utenti, a meno che non esista già un'anteprima. La decodifica, il ridimensionamento e la conversione delle immagini, soprattutto per originali di grandi dimensioni o con diverse dimensioni di destinazione, possono consumare CPU e memoria. Un picco di richieste rende visibile questo processo contemporaneamente all'utilizzo interattivo.

Preview Generator mette in coda i file nuovi o modificati per l'elaborazione in background. Le anteprime esistenti sono più economiche da gestire, ma quelle mancanti continuano a utilizzare il percorso on-demand di Nextcloud. L'app sposta parte del lavoro nei periodi di minore attività; non può ridurre la potenza di elaborazione totale né risolvere altri colli di bottiglia come la conversione video o la lentezza dell'archiviazione.

Configura una coda di anteprima controllata

1. Verifica la modalità di esecuzione in background e la compatibilità dell'app.

Nelle impostazioni di amministrazione, controlla i processi in background. Il processo integrato di Preview Generator richiede la modalità Cron; il suo file README indica che AJAX e Webcron non sono supportati per questo processo di lunga durata. Nextcloud consiglia di utilizzare il cron di sistema. Verifica che la pagina di amministrazione riporti l'utilizzo di Cron.

Installa Preview Generator dalla schermata App oppure, se la tua distribuzione utilizza OCC e consente l'installazione di app, esegui questi comandi dalla directory di installazione di Nextcloud. Su Debian o Ubuntu, l'account del server web è in genere www-data; usa l'utente HTTP effettivo e la versione di PHP CLI per il tuo host:

sudo -u www-data php /var/www/nextcloud/occ app:install previewgenerator
sudo -u www-data php /var/www/nextcloud/occ app:enable previewgenerator

Se è già installato, salta il primo comando. Verifica lo stato e i comandi disponibili:

sudo -u www-data php /var/www/nextcloud/occ app:list
sudo -u www-data php /var/www/nextcloud/occ list preview

Eseguire OCC come utente HTTP in modo che la proprietà dei file rimanga coerente. Percorsi e utenti variano a seconda dell'implementazione. Consultare la documentazione di Nextcloud relativa a OCC .

2. Riduci le varianti di anteprima prima di avviare un'esecuzione di generazione su larga scala

Preview Generator può creare miniature quadrate e anteprime con proporzioni personalizzabili, in base alle dimensioni configurabili. Il file README specifica che le dimensioni devono essere potenze di quattro e che un valore vuoto esclude questa categoria di anteprime. Di seguito è riportato un profilo iniziale semplificato per un server con problemi di carico. Questo profilo mantiene le piccole anteprime quadrate e due proporzioni, escludendo le varianti separate per sola larghezza e sola altezza.

sudo -u www-data php /var/www/nextcloud/occ config:app:set --value="64 256" previewgenerator squareSizes
sudo -u www-data php /var/www/nextcloud/occ config:app:set --value="256 1024" previewgenerator fillWidthHeightSizes
sudo -u www-data php /var/www/nextcloud/occ config:app:set --value="" previewgenerator widthSizes
sudo -u www-data php /var/www/nextcloud/occ config:app:set --value="" previewgenerator heightSizes

Questo profilo a basso carico non è universale: le app potrebbero richiedere anteprime più grandi o di forme diverse. Se le miniature sono mancanti o sfocate, identifica la visualizzazione richiesta e aggiungi solo le sue dimensioni. Dimensioni maggiori aumentano l'elaborazione e l'utilizzo della cache. Il set minimo consigliato nel README per File, Foto e Attività utilizza una dimensione maggiore di 4096 pixel; valuta questo compromesso in base al tuo hardware. Consulta il README ufficiale di Preview Generator ; utilizza una dimensione con rapporto d'aspetto maggiore di 4096 pixel, quindi valuta questo compromesso in base al tuo hardware.

Le impostazioni e preview_max_ximpongono un limite massimo di pixel complessivo. Esegui un backup del file prima di modificarlo e assicurati che sia compatibile con le dimensioni dell'app scelta. Disabilitando le anteprime, le miniature verranno rimosse da tutte le app.preview_max_yconfig/config.php

3. Pianifica il comando di pre-generazione dell'app senza duplicare il suo worker

Per un server di piccole dimensioni, il gestore di coda integrato può essere sufficiente una volta attivata la modalità Cron. Il suo job predefinito è limitato a un massimo di cinque minuti per esecuzione e l'applicazione fornisce statistiche sulla coda per il monitoraggio. Se è necessario un intervallo di tempo prevedibile al di fuori dei picchi di attività, utilizzare invece il comando OCC dedicato nel cron di sistema. Quando si utilizza questa pianificazione personalizzata, disabilitare il job di coda predefinito dell'applicazione in modo che i due meccanismi non entrino in conflitto.

sudo -u www-data php /var/www/nextcloud/occ config:app:set --value=true --type=boolean previewgenerator job_disabled

Quindi modifica il crontab per l'utente del server web ( sudo crontab -u www-data -e) e aggiungi un esempio di pianificazione come:

*/10 * * * * php -f /var/www/nextcloud/occ preview:pre-generate

Dieci minuti sono solo un esempio. Scegli una cadenza e un intervallo di tempo adatti al tuo traffico e alla tua capacità; verifica i percorsi di PHP e OCC. Non pianificare il comando anche altrove. Mantieni attivo cron.phpil job regolare di Nextcloud, che esegue altre attività in background. Consulta la guida ai job in background di Nextcloud per la configurazione del cron di sistema.

4. Evitare una corsa di recupero incontrollata la prima volta

Il file README suggerisce preview:generate-alldi sovrascrivere i file esistenti dopo l'installazione. Su una libreria di grandi dimensioni, questa operazione di recupero può causare un picco significativo di utilizzo della CPU. Evitate di sovrascrivere molti processi su un server sovraccarico. Iniziate con un singolo utente o percorso durante un periodo di inattività e monitorate CPU, memoria, velocità di trasmissione del disco e spazio libero. Il comando supporta ID utente, percorsi e numero di processi; iniziate con un solo processo. Se necessario, suddividete la scansione in più finestre.

Verificare che il carico stia diventando prevedibile

Dopo l'esecuzione del comando, controlla la coda:

sudo -u www-data php /var/www/nextcloud/occ preview:queue-stats

Le statistiche della coda includono anteprime obsolete. Un backlog in calo e picchi di utilizzo della CPU che terminano con l'esecuzione di lavori programmati indicano che la coda sta procedendo. Apri una cartella rappresentativa per verificare le miniature, quindi osserva la normale navigazione. Confronta l'utilizzo della CPU a livelli di traffico simili; non raggiungerà mai lo zero.

Se la coda non si riduce, controlla i log di cron ed esegui il programma preview:pre-generate -vvin una finestra di dialogo controllata per visualizzare i file elaborati. Se l'utilizzo della CPU rimane elevato anche dopo lo svuotamento della coda, esamina altri processi PHP, job o servizi multimediali. Se le anteprime occupano troppo spazio su disco, rimuovi le dimensioni non utilizzate o riducile. Verifica che le anteprime rimanenti supportino le visualizzazioni richieste dagli utenti.

Riferimenti ufficiali

Lascia un commento

Gestisci i picchi di utilizzo della CPU nell'anteprima di Nextcloud con una coda pianificata.

Sposta il lavoro sulle miniature in una pianificazione in background controllata, ridimensiona le anteprime non utilizzate e verifica la coda senza sovraccaricare il server Nextcloud.

Ottieni la sincronizzazione desktop di Nextcloud: oltre la fase di "Elaborazione file"

Individua il file, la regola di esclusione, il problema di connessione o lo stato del database del client che blocca la sincronizzazione di Nextcloud, quindi verifica che i caricamenti e i download avvengano in sicurezza.

Elimina l'avviso di Nextcloud OPcache regolando il limite corretto

Individua il limite di PHP OPcache che causa l'avviso di Nextcloud, aggiorna la configurazione PHP web corretta, riavvia in modo sicuro e verifica il risultato.

Connettere Nextcloud a CODE Docker: configurazione e compromessi

Connettere Nextcloud a CODE Docker: configurazione e compromessi

Confronta il codice integrato e quello basato su Docker, quindi connetti Collabora Online a Nextcloud tramite un proxy inverso HTTPS sicuro.

Crea un cluster Nextcloud resiliente con Galera

Pianifica un'implementazione HA affidabile di Nextcloud con storage condiviso, blocco Redis, routing MariaDB con supporto al quorum e controlli di failover pratici.

Portare a termine le chiamate Nextcloud Talk quando Direct Media non funziona

Portare a termine le chiamate Nextcloud Talk quando Direct Media non funziona

Configurare e verificare la raggiungibilità di un relay TURN per Nextcloud Talk quando firewall o NAT restrittivi bloccano i flussi multimediali diretti delle chiamate.

Risolvi gli avvisi di integrità di Nextcloud ripristinando i file corretti

Utilizza il report sui file non validi per identificare il codice Nextcloud modificato, mancante o in eccesso, ripristinare in modo sicuro i file attendibili e verificarne il risultato.

Collega Gmail o Microsoft 365 a Nextcloud Mail tramite OAuth2

Configura OAuth2 per Nextcloud Mail con Gmail o Microsoft 365, verifica la ricezione e l'invio e risolvi i problemi più comuni relativi al consenso e al protocollo SMTP.

Sblocca in modo sicuro la modalità di manutenzione di Nextcloud con OCC

Sblocca in modo sicuro la modalità di manutenzione di Nextcloud con OCC

Utilizza OCC per ripristinare l'accesso a Nextcloud, verificare lo stato della migrazione del database e scegliere il comando corretto per le installazioni di archivio, Docker o Snap.

Configura l'accesso LDAP e Active Directory di Nextcloud.

Collega Nextcloud a LDAP o Active Directory, limita l'accesso con filtri per utenti e gruppi e verifica l'autenticazione sicura prima del lancio.