Indice
Nextcloud HPF, vitamine per il tuo File Sharing
Come usare High Performance Files e High Performance Backend HPB in Nextcloud
Installazione e abilitazione di High Performance Backend
Nextcloud HPF, vitamine per il tuo File Sharing
Stai usando Nextcloud da tempo ed hai notato dei rallentamenti ? Non performa più come dovrebbe ?
Forse perché in azienda tutti lo stanno usando nonostante sia un prodotto Open Source e poco considerato …
Oggi per poter migliorare la sincronizzazione dei client evitando di appesantire il server ed allo stesso tempo migliorando il delay di ritardo per la sincronizzazione tra client e server è possibile installare il servizio High Performance Files.
Questo servizio viene segnalato dalla versione 30 di Nextcloud in poi nel pannello di riepilogo dello stato del sistema.
Questa app tenta di risolvere il problema per cui i client di Nextcloud devono controllare periodicamente il server per verificare se i file sono stati modificati. Per mantenere una sincronizzazione veloce, i client vogliono controllare spesso la presenza di aggiornamenti, il che aumenta il carico sul server.
Con molti client che controllano tutti gli aggiornamenti, gran parte del carico del server può essere costituito solo da questi controlli di aggiornamento.
Fornendo un modo per il server di inviare notifiche di aggiornamento ai client, la necessità per i client di effettuare questi controlli può essere notevolmente ridotta.
Come usare High Performance Files (HPF) e High Performance Backend (HPB) in Nextcloud
La sincronizzazione e la collaborazione in tempo reale sono diventati elementi cruciali nei moderni ambienti di lavoro. Nextcloud, con il suo approccio open-source, offre un sistema potente per la gestione dei file, ma per ottenere prestazioni davvero elevate occorre andare oltre WebDAV tradizionale.
Per questo sono nati High Performance Files (HPF) e High Performance Backend (HPB), introdotti per ridurre la latenza, migliorare la reattività del client e garantire un flusso di lavoro fluido anche con migliaia di file.
In questo articolo vedremo cosa sono, perché usarli e come configurarli.
High Performance Files (HPF)
È un protocollo moderno sviluppato da Nextcloud che sostituisce molte operazioni lente basate su WebDAV.
Offre:
- sincronizzazione più rapida,
- gestione dei metadati più efficiente,
- meno chiamate al server,
- migliore performance su cartelle con migliaia di file.
High Performance Backend (HPB)
È il server di backend che fornisce:
- aggiornamenti in tempo reale ai client (event-based),
- notifiche push sugli eventi dei file,
- riduzione del polling, quindi meno carico sul server.
HPB comunica con i client tramite notify_push, un servizio aggiuntivo che estende Nextcloud con WebSocket ed eventi push.
Prerequisiti
Per utilizzare HPF e HPB al meglio servono:
- Nextcloud 25 o superiore
- Server web (Apache o Nginx)
- Redis (per lock e filecache ottimizzati)
- PHP 8.1+
- Accesso shell e possibilità di installare servizi aggiuntivi
- Certificato HTTPS valido
I client desktop Nextcloud dalla versione 3.12+ supportano pienamente HPF.
Installazione e abilitazione di High Performance Backend
1. Installare l’app notify_push
Da occorre installare l’app ufficiale:
sudo -u www-data php occ app:install notify_push
Poi abilitarla:
sudo -u www-data php occ app:enable notify_push
2. Avviare il servizio notify_push
Il binario si trova in:
/var/www/nextcloud/apps/notify_push/bin/notify_push
È consigliabile eseguirlo come servizio systemd:
Esempio unità systemd:
[Unit]
Description=Nextcloud HPB notify_push
After=network.target
[Service]
User=www-data
Group=www-data
ExecStart=/var/www/nextcloud/apps/notify_push/bin/notify_push /var/www/nextcloud/config/config.php
Restart=always
[Install]
WantedBy=multi-user.target
Poi:
sudo systemctl enable –now notify_push.service
3. Configurazione Reverse Proxy
notify_push richiede un endpoint dedicato, ad esempio:
- https://cloud.example.com/push/
Configurazione minima Nginx:
location ^~ /push/ {
proxy_pass http://127.0.0.1:7867/;
proxy_http_version 1.1;
proxy_set_header Connection “”;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Host $host;
}
4. Attivare HPB in Nextcloud
sudo -u www-data php occ config:app:set notify_push base_endpoint –value=”https://cloud.example.com/push/”
Verificare lo stato:
sudo -u www-data php occ notify_push:status
Dovrebbe apparire “✔ HPB is enabled”.
Attivazione e verifica
HPF è già incluso in Nextcloud 25+ e si abilita automaticamente quando:
- HPB è attivo,
- Redis è configurato per locking e caching,
- il client desktop lo supporta.
Controllo
sudo -u www-data php occ config:system:get filelocking.enabled
Configurazione consigliata in config.php:
‘memcache.local’ => ‘\\OC\\Memcache\\Redis’,
‘memcache.locking’ => ‘\\OC\\Memcache\\Redis’,
‘redis’ => [
‘host’ => ‘/var/run/redis/redis-server.sock’,],
Verificare il funzionamento lato client
Se HPF e HPB sono attivi, nel client Nextcloud (Desktop):
- lo stato viene mostrato nella schermata “Account → Server status”
- appare “Real-time (HPB) active”
- le operazioni di sincronizzazione sono più rapide
- i file cambiano stato quasi istantaneamente (grazie agli eventi push)
Vantaggi e conclusioni
Riduzione del carico CPU del server
Meno polling e meno traffico WebDAV.
Sincronizzazione molto più veloce
Specialmente su:
- cartelle con migliaia di piccoli file,
- file su storage esterni (S3, SMB),
- lavori collaborativi intensivi.
Feedback immediato
Il client riceve notifiche push quando un file cambia.
Conclusioni
L’uso combinato di High Performance Files e High Performance Backend rappresenta uno dei miglioramenti più significativi nell’ecosistema Nextcloud.
Impostarlo richiede qualche passaggio tecnico, ma i benefici in termini di prestazioni, reattività e scalabilità sono enormi, sia per installazioni personali sia per ambienti enterprise con molti utenti.
Supporto
Chi desideri ricevere supporto su nextcloud ed avere una soluzione pronta all’uso può contattarci per accedere alla repository delle immagini container/docker che già includono questa funzionalità.
