Co oznacza stan IDLE w wierszu pg_stat_activity?


15

Czy ktoś może rozwiązać moje wątpliwości co pg_stat_activitydo postgresu 9.5?

  1. Czy ktoś może dać mi znać, co state IDLEoznacza w wierszu pg_stat_activity? Czy to tak, że sprawdza wszystkie otwarte połączenia z postgres, a jeśli połączenie nie wykonuje żadnego zapytania, IDLEoznacza to ostatnie zapytanie wykonane przez połączenie?
  2. W danych wyjściowych select * from pg_stat_activitywidzę wiersze z state IDLEi query_start_datestarsze niż 2 dni? Co to oznacza? Czy powinienem się tym martwić?
  3. Czy ktoś może mi powiedzieć, w jaki sposób pg_stat_activity jest wypełniony? Jeśli wykonuję zapytanie w taki Select * from pg_stat_activitysposób, czy wyświetla szczegóły z jakiejś migawki obsługiwanej przez postgres, czy sprawdza bieżące połączenia otwarte w postgresie, aby podać szczegóły?

Odpowiedzi:


12

Odpowiedzi udzielono na liście mailingowej postgres

Każdy wiersz w pg_stat_activity reprezentuje ustanowione połączenie z serwerem od klienta. „bezczynny” oznacza, że ​​klient nie wykonuje obecnie zapytania ani nie zawiera transakcji.

Jeśli data_start_date ma 2 dni, oznacza to, że ostatnie zapytanie, które zostanie wykonane dla tego połączenia, miało miejsce dwa dni temu.

Naprawdę nie jest to powód do zmartwień, chyba że masz tyle otwartych połączeń, że zużywa więcej pamięci RAM, niż możesz sobie pozwolić. Zasadniczo pożądane jest, aby pula połączeń zawierała kilka bezczynnych połączeń, aby zapytania nie miały opóźnień w nawiązywaniu nowego połączenia.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.