CPU, pamięć RAM i IOPS opisują różne ograniczenia Home Assistant: CPU wpływa na obliczenia, RAM na zestaw roboczy i pamięć podręczną, a IOPS na opóźnienia bazy danych i metadanych. Żaden z tych parametrów samodzielnie nie przewiduje końcowych wrażeń z użytkowania. Zanim zapłacisz za wyższą specyfikację, przełóż każdą wartość na ten sam zestaw obciążeń: od zdarzenia do działania, zapytania do historii, restartu, kopii zapasowej i usług działających współbieżnie.
Przełóż CPU na pracę szeregową i współbieżną
Procesor ma dwa istotne wymiary: szybkość, z jaką może postępować jedna ścieżka wrażliwa na opóźnienia, oraz ilość niezależnej pracy, która może być wykonywana współbieżnie. Przetwarzanie szablonu lub pojedyncze wywołanie zwrotne integracji może zależeć od szybkości pojedynczego rdzenia, podczas gdy kilka kontenerów, zadań bazy danych lub zadań głosowych może wykorzystywać dodatkowe rdzenie.
Testy społeczności obejmujące wiele platform Home Assistant pokazują, dlaczego testy Home Assistant na różnych platformach są bardziej miarodajne niż porównywanie samych nazw modeli lub częstotliwości GHz.
Przełóż specyfikację na czas od zdarzenia do działania w 95. percentylu przy docelowym poziomie współbieżności. Jeśli kandydat ma więcej rdzeni, ale szeregowa ścieżka sterowania pozostaje bez zmian, rdzenie te zapewniają zapas wydajności dla usług, a nie mniejsze opóźnienie pojedynczego działania.
Przełóż RAM na stabilność zestawu roboczego
Pojemność RAM określa, czy Core, dodatki, zestaw roboczy bazy danych, pamięć podręczna systemu plików i system operacyjny mogą współistnieć bez presji odzyskiwania pamięci. Pamięć podręczna przyspiesza powtarzające się odczyty, dlatego niewielka ilość wolnej pamięci może być prawidłowa, jeśli nie występuje użycie swapu ani eksmisja danych.
Aktualna dyskusja dotycząca wyboru serwera zaleca porównywanie generacji procesorów i kompletnych systemów, jednocześnie uwzględniając różne obciążenia. Takie porównanie sprzętu całego systemu wiąże RAM z planowanymi usługami, zamiast z uniwersalną liczbą encji.
Przełóż pamięć na trzy obserwacje: maksymalne wykorzystanie zestawu roboczego, opóźnienie swapu lub odzyskiwania pamięci oraz to, czy proces jest zabijany lub uruchamiany ponownie. Większa ilość RAM zmienia wydajność tylko wtedy, gdy obecna pojemność nie wystarcza do niezawodnego utrzymania wymaganego stosu.
Przełóż IOPS na opóźnienia bazy danych i metadanych
IOPS określa szacunkową liczbę małych operacji pamięci masowej, które mogą zostać ukończone, natomiast opóźnienie opisuje czas oczekiwania na każdą z nich. Home Assistant wykonuje małe transakcje Rejestratora, odczyty indeksów, zapis logów, aktualizacje rejestru, operacje na metadanych kontenerów i synchronizację systemu plików, które mogą ujawnić słabość losowych operacji wejścia-wyjścia, nawet gdy przepustowość sekwencyjna wygląda dobrze.
W dyskusji dotyczącej wydajności zauważono, że konfiguracja bazy danych i wybór backendu mogą powodować więcej problemów, niż rozwiązują, dlatego wydajność ścieżki bazy danych przypomina, aby porównywać obsługiwane obciążenie, a nie syntetyczne deklaracje dotyczące dysku.
Przełóż specyfikację pamięci masowej na opóźnienie dysku w 95. percentylu i głębokość kolejki podczas jednoczesnego wykonywania ustalonego zapytania do historii, restartu i kopii zapasowej. Wysokie deklarowane IOPS mają znaczenie tylko wtedy, gdy te operacje rzeczywiście są ograniczone przez pamięć masową.
Odrzuć każdą specyfikację, która nie wpływa na wynik
Szybszy CPU nie naprawi zakłóceń radiowych, a większa ilość RAM nie skróci czasu oczekiwania na chmurę. Dysk NVMe nie sprawi, że telefon szybciej wyrenderuje złożony pulpit, jeśli odpowiedź serwera już jest szybka. Każde porównanie wymaga warunku zatrzymania dla niewłaściwego parametru.
Powtarzalny test od zdarzenia do działania pozwala utrzymać wyzwalacze, działania i punkty obserwacji bez zmian podczas wymiany sprzętu.
Zmniejsz znaczenie danego parametru, gdy jego wykorzystanie i opóźnienie nie zmieniają się wraz z nieprawidłowym wynikiem. Jeśli dwóch kandydatów zapewnia taki sam rezultat działania usługi, ponieważ decydujące znaczenie mają sieć, klient lub zachowanie integracji, wybór tańszego sprzętu jest racjonalny.
Przetestuj krótką listę za pomocą jednego ustalonego scenariusza
Przywróć tę samą oczyszczoną kopię zapasową Home Assistant na każdym kandydacie i użyj tej samej wersji, trybu pamięci masowej, sieci, modułów radiowych, klientów oraz bazy danych. Wykonaj zimny start, działanie lokalne, zapytanie do historii, normalne obciążenie zdarzeniami, kopię zapasową i najbardziej wymagającą planowaną usługę towarzyszącą.
Rejestruj czas odpowiedzi p50 i p95, błędy, obciążenie każdego rdzenia CPU, presję pamięci, użycie swapu, opóźnienie dysku, głębokość kolejki, pobór mocy, temperaturę i czas odzyskiwania sprawności. Powtarzaj testy, aż efekt rozgrzanej pamięci podręcznej przestanie wyjaśniać kolejność wyników.
Wybierz najtańszego kandydata, który spełnia wszystkie wymagane cele usług z zapasem. CPU ma pierwszeństwo w budżecie tylko przy ograniczeniach obliczeniowych, RAM przy ograniczeniach zestawu roboczego, a IOPS przy ścieżkach ograniczonych przez pamięć masową; jeśli żaden z tych parametrów nie jest ograniczeniem, przeznacz zaoszczędzone środki na kopię zapasową, ochronę zasilania lub przyszłą rozbudowę opartą na pomiarach.
Podsumowanie
Przełóż każdą specyfikację na jedno obciążenie: CPU na opóźnienie obliczeń, RAM na presję pamięci i przetrwanie procesu, a IOPS na opóźnienie pamięci masowej. Kup najtańszego kandydata, który przejdzie pełny test usług i odzyskiwania sprawności.
Przewodnik zakupowy
Więcej do przeczytania

Jak wybrać energooszczędny sprzęt do całodobowego działania Home Assistant
Porównaj systemy Home Assistant pod kątem poboru mocy z gniazdka i obciążenia. Kup nowy, gdy uzasadniają to zużycie energii, hałas, niezawodność lub zmierzony limit...

Jak wybrać serwer Home Assistant do wspólnego gospodarstwa domowego
Dobieraj rozmiar Home Assistant do obciążenia gospodarstwa domowego, a nie liczby osób. Wybierz hosta na podstawie zmierzonych wartości szczytowych, trwałej pamięci masowej, oddzielnych tożsamości...

Jak wybrać serwer Home Assistant na wypadek awarii internetu
Sprzęt Home Assistant gotowy na awarie zaczyna się od lokalnej ścieżki sterowania. Dobierz zasilanie, pamięć masową i mechanizmy odzyskiwania danych do działań, które muszą...

