Quanti utenti simultanei può gestire Home Assistant prima di rallentare?

Eva Wong è la Technical Writer e smanettatrice residente di ZimaSpace. Una geek da sempre con una passione per homelab e software open-source, si specializza nel tradurre concetti tecnici complessi in guide accessibili e pratiche. Eva crede che l'auto-ospitare debba essere divertente, non intimidatorio. Attraverso i suoi tutorial, dà potere alla comunità di demistificare le configurazioni hardware, dalla costruzione del loro primo NAS al dominio dei container Docker.

Home Assistant non ha una risposta universale utile come “20 utenti” o “100 utenti”. Un account connesso ma inattivo crea un carico diverso rispetto a un tablet a parete che visualizza una dashboard complessa, a un telefono che apre la cronologia o a diversi utenti che guardano schede delle telecamere mentre migliaia di entità si aggiornano.

Dimensiona l’uso simultaneo misurando i client connessi e il lavoro causato da ciascun client. Il limite pratico è il punto in cui le dashboard rappresentative, gli aggiornamenti WebSocket, le azioni del server e il percorso di rete iniziano a non rispettare più il tempo di risposta che consideri accettabile.

Conta i client connessi, non solo gli account utente

Creare 100 account non significa avere 100 sessioni simultanee. Al contrario, una sola persona può avere contemporaneamente connessi un browser, un telefono, un tablet e un dispositivo kiosk.

L’integrazione WebSocket di Home Assistant può fornire sensor.connected_clients come numero attuale di client WebSocket connessi. Usa questo numero come indicatore della simultaneità mentre riproduci il carico di lavoro.

Registra il numero di client insieme a CPU del server, pressione sulla memoria, throughput di rete e latenza delle azioni. Il numero di connessioni, senza il carico di lavoro che vi sta dietro, non è un risultato di capacità.

Il costo del frontend dipende dagli aggiornamenti dello stato e dal lavoro della dashboard

Il frontend stabilisce una connessione WebSocket e mantiene sincronizzato lo stato di Home Assistant con il browser. Ogni client deve inoltre visualizzare la dashboard che apre, quindi l’hardware del client e le schede personalizzate possono diventare un limite prima del server.

L’architettura attuale del frontend descrive come il frontend riceva lo stato principale e le sottoscrizioni aggiuntive tramite l’API WebSocket. Un’installazione molto attiva crea quindi un lavoro continuo di aggiornamento dopo il caricamento iniziale della pagina.

Verifica l’effettiva combinazione di dashboard utilizzata dal nucleo familiare, invece di aprire una pagina di test vuota su ogni client.

Un’elevata frequenza di aggiornamento delle entità può danneggiare i client prima che il numero di utenti sembri elevato

Un sistema con migliaia di sensori che cambiano frequentemente può generare molto più lavoro per il frontend rispetto a una popolazione di utenti più numerosa che visualizza soprattutto entità statiche. Questo è particolarmente evidente sui tablet più vecchi e sui pannelli a parete a bassa potenza.

Un problema di Home Assistant ha documentato un caso in cui grandi volumi di aggiornamenti delle entità hanno sovraccaricato i client delle dashboard, anche quando la dashboard visibile era semplice.

Questo non definisce una soglia universale, ma dimostra perché “utenti” sia l’unità di misura singola sbagliata. Misura gli aggiornamenti al secondo e la reattività dei client insieme al numero di connessioni.

Non esiste un massimo pubblicato per le installazioni domestiche da copiare

Le domande della community su installazioni insolitamente grandi illustrano questa incertezza. Una discussione su circa 200 utenti non ha trovato un limite massimo supportato chiaro e ha considerato questa scala un caso d’uso insolito da testare, non da dare per scontato.

Per una normale abitazione, ciò significa che non è necessario inseguire un numero massimo di sessioni in stile fornitore. Per una struttura comunitaria, un edificio condiviso, un laboratorio o un’altra installazione con molti utenti, Home Assistant potrebbe non essere la piattaforma più adatta per la gestione di identità e accessi, anche se il server è tecnicamente in grado di sostenere le connessioni.

Il metodo di dimensionamento dei carichi simultanei di ZimaSpace si applica anche in questo caso: la capacità dovrebbe essere legata alla sovrapposizione realistica nei momenti di maggiore attività, non al numero totale di account registrati.

Esegui un test a incrementi finché una metrica non evidenzia ripetutamente il problema

Passaggio Misurazione Condizione di arresto
Aggiungi client attivi in piccoli gruppi Client connessi Raggiunta la simultaneità rappresentativa
Apri dashboard reali Tempo di visualizzazione iniziale e ritardo nelle interazioni Ritardo percepibile dall’utente e ripetuto
Genera il normale traffico delle entità Carico WebSocket/degli aggiornamenti I client non riescono a mantenere il ritmo
Esegui azioni comuni Latenza dall’azione del server al dispositivo La latenza dei comandi aumenta in modo significativo
Ripeti al picco Carico di CPU, memoria, rete e client Lo stesso livello limitante ricompare

Scegli una capacità inferiore di un passaggio rispetto al primo punto di errore ripetibile e lascia margine per backup, aggiornamenti, traffico delle telecamere e picchi insoliti. Se rallenta solo un vecchio tablet mentre le azioni del server restano rapide, sostituire il server potrebbe non aumentare la simultaneità effettivamente utilizzabile.

Domande frequenti

20 account utente di Home Assistant equivalgono a 20 utenti simultanei?

No. Gli account sono identità; la simultaneità riguarda le connessioni attive dei client e il lavoro che queste generano. Un utente può avere diversi client, mentre molti account possono essere completamente inattivi.

Dashboard più semplici permetteranno sempre la connessione di più utenti?

Possono ridurre il lavoro di visualizzazione sui client, ma la capacità del server dipende anche dalla frequenza di aggiornamento delle entità, dal traffico WebSocket, dalle query della cronologia, dalle telecamere, dal percorso di rete e dai servizi in background. Misura il carico di lavoro completo.

Supporto e consigli

Altro da leggere

Get More Builds Like This

Stay in the Loop

Get updates from Zima - new products, exclusive deals, and real builds from the community.

Stay in the Loop preferences

We respect your inbox. Unsubscribe anytime.