Aby skonfigurować pamięć podręczną Home Assistant, najpierw ustal, które dane są tymczasowe; nigdy nie przenoś całej ścieżki trwałej konfiguracji do pamięci tymczasowej.
„Pamięć podręczna” może oznaczać zasoby interfejsu przeglądarki, pliki TTS, tymczasowe pliki konkretnej integracji, katalog /tmp kontenera, pamięć podręczną stron systemu operacyjnego lub przestrzeń roboczą bazy danych. Te warstwy mają różnych właścicieli i różne metody odzyskiwania. Użytkowników, rejestry, konfigurację, stan Recorder i inne pliki będące źródłem prawdy przechowuj na trwałym nośniku. Używaj tmpfs lub pamięci opartej na RAM-ie tylko dla udokumentowanej, tymczasowej ścieżki, której utratę i zużycie pamięci sprawdzono przez ponowne uruchomienie.
Zanim przeniesiesz jakąkolwiek ścieżkę, ustal, czym jest pamięć podręczna
Na początek określ właściciela danych, ścieżkę, maksymalny przewidywany rozmiar, sposób ich odtworzenia i skutki ich utraty. Pamięć podręczna przeglądarki znajduje się po stronie klienta; trwały stan aplikacji Home Assistant jest przechowywany w skonfigurowanej ścieżce danych; pamięci podręczne integracji różnią się między sobą; tymczasowe pliki kontenera mogą zniknąć przy ponownym uruchomieniu. Nie da się rozwiązać tych problemów jednym globalnym ustawieniem „katalogu pamięci podręcznej”.
Przykład Home Assistant TTS pokazuje wąski przypadek, w którym wygenerowane pliki audio z konkretnego katalogu pamięci podręcznej zostały celowo przekierowane do lokalizacji opartej na RAM-ie. Najważniejsza granica przy przenoszeniu tymczasowej pamięci podręcznej TTS polega na tym, że użytkownik wskazał jeden katalog, który można odtworzyć, a nie całe drzewo konfiguracji.
Jeśli nie możesz mieć pewności, że usunięcie pliku nie spowoduje utraty tożsamości, historii, ustawień, pulpitów ani rejestracji integracji, uznaj go za trwały. Najbezpieczniejszym rozwiązaniem jest trwały nośnik. Optymalizacją zajmij się dopiero wtedy, gdy wiadomo, kto odpowiada za odzyskiwanie danych.
Przechowuj trwały stan Home Assistant i dane Recorder na trwałym nośniku
Montowany katalog konfiguracji nie jest pamięcią podręczną tylko dlatego, że zawiera wygenerowane pliki. Mogą się w nim znajdować dane uwierzytelniające, rejestry encji i urządzeń, stan automatyzacji, konfiguracja, niestandardowe komponenty i domyślna baza danych Recorder. Umieszczenie całej tej ścieżki w tmpfs oznacza utratę danych po ponownym uruchomieniu, a kopie zapasowe uzależnia od zawartości pamięci, która nigdy nie miała być źródłem prawdy.
Wyjaśnienie ZimaSpace dotyczące ról trwałych danych Home Assistant stanowi właściwy pierwszy filtr: przed przypisaniem poziomów pamięci masowej oddziel stan źródłowy odtwarzalny od pamięci podręcznej i tymczasowych danych roboczych.
Używaj dysku SSD lub innego niezawodnego trwałego systemu plików do przechowywania stanu aplikacji i zapewnij wystarczającą ilość wolnego miejsca na rozrost bazy danych, aktualizacje i konserwację. Przeniesienie niewielkiej, tymczasowej pamięci podręcznej do RAM-u nie zrekompensuje zbyt małego lub niesprawnego woluminu trwałego.
Używaj tmpfs tylko dla jawnie tymczasowych ścieżek i z limitem pamięci
Tmpfs może ograniczyć liczbę zapisów i zapewnić bardzo niskie opóźnienia, ale zużywa pamięć RAM hosta i znika po zatrzymaniu kontenera lub hosta. Dlatego nadaje się do ograniczonych danych roboczych, a nie do niczego, co jest potrzebne po restarcie. Rozmiar montowania należy też dobrać tak, aby tymczasowe obciążenie nie zużyło pamięci potrzebnej Home Assistant Core i sąsiednim usługom.
Aktualny poradnik Docker Compose wyjaśnia, że użycie tmpfs wlicza się do limitu pamięci i może powodować błędy braku miejsca lub OOM, jeśli jest nadmierne albo nieograniczone względem budżetu pamięci kontenera.
Ustaw limit rozmiaru, monitoruj maksymalne użycie i celowo zrestartuj kontener. Ścieżka powinna automatycznie się odtworzyć, a użytkownicy, ustawienia, historia i integracje powinny pozostać bez zmian. Jeśli aplikacja nie potrafi odtworzyć katalogu albo uznaje jego brak za uszkodzenie, przenieś go z powrotem do pamięci trwałej.
Traktuj pamięć podręczną interfejsu jako problem klienta, a nie pamięci serwera
Nieaktualna strona Home Assistant może nadal wyświetlać się w jednej przeglądarce, nawet gdy serwer działa prawidłowo, ponieważ przeglądarka lub aplikacja przechowuje zasoby interfejsu w pamięci podręcznej. Czyszczenie plików tymczasowych po stronie serwera nie naprawi stanu tego klienta. Z kolei wyczyszczenie pamięci podręcznej przeglądarki nie ograniczy operacji wejścia-wyjścia na dysku wykonywanych przez Recorder ani nie zmniejszy bazy danych Home Assistant.
Użytkownicy Home Assistant wyraźnie rozróżniają pamięć podręczną interfejsu od pamięci podręcznej przeglądarki, dlatego diagnostykę pamięci podręcznej należy zacząć od ustalenia, czy objaw występuje tylko na jednym kliencie, czy na całym serwerze.
Użyj czystej przeglądarki lub profilu prywatnego jako punktu odniesienia do testu. Jeśli nowy klient działa prawidłowo, wprowadź poprawkę po stronie interfejsu. Jeśli ten sam brak danych lub błąd po stronie serwera występuje u każdego klienta, nie czyść w kółko pamięci podręcznej przeglądarki; wróć do diagnostyki logów Home Assistant, pamięci masowej, integracji lub bazy danych.
Zweryfikuj pamięć tymczasową za pomocą testów restartu, presji na zasoby i wolnego miejsca
Po zmianie ścieżki pamięci podręcznej lub tmpfs zmierz jej zwykły i maksymalny rozmiar, ilość dostępnej pamięci hosta, presję na pamięć kontenera, wolne miejsce na woluminie trwałym oraz zachowanie po restarcie. Następnie uruchom obciążenie, które tworzy pamięć podręczną — syntezę mowy, multimedia, przetwarzanie przez niestandardową integrację lub inny znany proces ją wytwarzający — i sprawdź, czy czyszczenie przebiega zgodnie z oczekiwaniami.
Zostaw zapas miejsca na pamięci trwałej dla operacji wymagających tymczasowej przestrzeni roboczej, nawet jeśli baza danych na co dzień bez problemu się mieści. Nie zapełniaj woluminu trwałego, bo pamięć podręczna RAM sprawiała, że zwykłe zapisy zajmowały mniej miejsca; aktualizacje, konserwacja bazy danych, kopie zapasowe i nagłe skoki ilości logów mogą wymagać zupełnie innej ilości wolnego miejsca tymczasowego.
Zalicz test, gdy każda tymczasowa ścieżka może zostać usunięta i odtworzona, trwały stan przetrwa restart kontenera i hosta, maksymalne użycie tmpfs mieści się w limicie pamięci, a Home Assistant nadal ma wystarczająco dużo wolnego miejsca na trwałe dane. Jeśli po teście zniknie jakiekolwiek wymagane ustawienie lub historia, ścieżka została błędnie zaklasyfikowana i przed dalszym dostrajaniem należy przenieść ją z powrotem do pamięci trwałej.
Wsparcie i porady
Więcej do przeczytania

Co sprawdzić przed załadowaniem modelu społecznościowego w Transformers
Użyj aktualizacji piaskownicy Jinja dla Transformers, aby sprawdzić pochodzenie modelu, szablony czatu, zdalny kod, serializowane wagi i pierwsze uruchomienia w izolowanym środowisku.

Uruchom Mirage lokalnie: OCR i wykrywanie obiektów na podstawie jednego obrazu
Przetestuj niewielki lokalny model wizyjny Cactus Compute, zweryfikuj OCR i ekstrakcję obiektów na rzeczywistych danych wejściowych oraz poznaj ograniczenia związane z pamięcią, językiem i...

Jak zaplanować agenta programistycznego w Open WebUI na serwerze domowym
Skonfiguruj w Open WebUI automatyzację agenta programistycznego działającego wyłącznie w trybie raportowania, wybierz jego terminal i obszar roboczy, a następnie sprawdź uprawnienia, logi i...



