🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: pl.comp.bazy-danych
7 messages
7 total messages Started by Marek S Wed, 25 Apr 2018 10:35
PostgreSQL 8.2 zrywa połaczenia
#195584
Author: Marek S
Date: Wed, 25 Apr 2018 10:35
17 lines
1522 bytes
Witam,

Zanim zacznę głębiej drążyć temat, to chciałbym podpytać o metodykę 
postępowania. Chodzi o to, że obserwuję u klienta pewną regularność. W 
chwili gdy do aplikacji loguje się o określonej godzinie ok 50 osób 
(spora liczba zapytań SQL), prawie zawsze zrywane jest połączenie. Gdy w 
tym czasie grzebię w bazie za pomocą PgAdmina, również je tracę w tym 
momencie.

Owszem, logi przejrzę. Jednakże kiedyś już to robiła bardziej 
doświadczona ode mnie osoba i nic konstruktywnego z tego nie wynikło. 
Ponoć opis w logach dawał jednoznacznej odpowiedzi. Stąd moje obawy i 
pytanie o to jak ugryźć problem.

-- 
Pozdrawiam,
Marek
Re: PostgreSQL 8.2 zrywa połaczenia
#195585
Author: M.M.
Date: Fri, 27 Apr 2018 00:26
24 lines
2479 bytes
On Wednesday, April 25, 2018 at 12:35:31 PM UTC+2, Marek S wrote:
> Witam,
> 
> Zanim zacznę głębiej drążyć temat, to chciałbym podpytać o metodykę 
> postępowania. Chodzi o to, że obserwuję u klienta pewną regularność. W 
> chwili gdy do aplikacji loguje się o określonej godzinie ok 50 osób 
> (spora liczba zapytań SQL), prawie zawsze zrywane jest połączenie. Gdy w 
> tym czasie grzebię w bazie za pomocą PgAdmina, również je tracę w tym 
> momencie.
> 
> Owszem, logi przejrzę. Jednakże kiedyś już to robiła bardziej 
> doświadczona ode mnie osoba i nic konstruktywnego z tego nie wynikło. 
> Ponoć opis w logach dawał jednoznacznej odpowiedzi. Stąd moje obawy i 
> pytanie o to jak ugryźć problem.

Jeśli jest 50 osób, to jedna traci połączenie, kilka, czy wszystkie?

Ciężko doradzić coś ze szklanej kuli. ROzumiem że tak trywialne 
błędy jak max_connections wyeliminowałeś?


https://www.postgresql.org/docs/current/static/runtime-config-connection.html#GUC-MAX-CONNECTIONS

Pozdrawiam
Re: PostgreSQL 8.2 zrywa połaczenia
#195586
Author: Marek S
Date: Sat, 28 Apr 2018 16:51
8 lines
1178 bytes
Ok, temat zamknięty. Mimo sporego zapasu RAM serwera następowało 
zabijanie procesu bazy danych z powodu ... braku pamięci (out of memory 
killer). Tak więc temat jest nadal nierozwiązany ale dotyczy nie bazy 
lecz serwera. Nie wiadomo czemu tak się dzieje.

-- 
Pozdrawiam,
Marek
Re: PostgreSQL 8.2 zrywa połaczenia
#195587
Author: M.M.
Date: Sat, 28 Apr 2018 21:40
17 lines
2067 bytes
On Saturday, April 28, 2018 at 6:51:36 PM UTC+2, Marek S wrote:
> Ok, temat zamknięty. Mimo sporego zapasu RAM serwera następowało 
> zabijanie procesu bazy danych z powodu ... braku pamięci (out of memory 
> killer). Tak więc temat jest nadal nierozwiązany ale dotyczy nie bazy 
> lecz serwera. Nie wiadomo czemu tak się dzieje.
> 
> -- 
> Pozdrawiam,
> Marek

Nie wiem co jest dla Ciebie oczywiste, a co zagadką. Niektóre ustawienia
buforów Postgresa powielają się z każdym podłączonym użytkownikiem. 
Jeśli ustawiłeś 200MB, to po podłączeniu 50 użytkowników serwer 
bazodanowy zajmuje 200MB*50=10GB, plus narzut, plus inne duperele i
oczywiście plus bufor współdzielony.

Pozdrawiam
Re: PostgreSQL 8.2 zrywa połaczenia
#195588
Author: Marek S
Date: Sun, 29 Apr 2018 09:12
27 lines
2342 bytes
W dniu 2018-04-28 o 23:40, M.M. pisze:

> Nie wiem co jest dla Ciebie oczywiste, a co zagadką. Niektóre ustawienia
> buforów Postgresa powielają się z każdym podłączonym użytkownikiem.
> Jeśli ustawiłeś 200MB, to po podłączeniu 50 użytkowników serwer
> bazodanowy zajmuje 200MB*50=10GB, plus narzut, plus inne duperele i
> oczywiście plus bufor współdzielony.

Chodziło mi o to, że problem jest bardziej po stronie administratora 
samego serwera. Informację od administratora otrzymałem taką, że w 
szczytowych momentach serwer wykorzystuje ok 2GB. Kłóci się to z tym, że 
OOM Killer mimo wszystko aktywizuje się i zrzuca Postgresa, ale na 
serwerach nie znam się więc nie dyskutowałem. Być może jest tak, że w 
logowanie się 50 osób pożera całość RAM przez krótką chwilę a 
administrator nie zdąży tego zauważyć i błędnie mnie poinformował. 
Zjawisko jest zbyt regularne by było przypadkowe. Zawsze o porach 
logowania występuje. Sporadycznie - pomiędzy nimi.

Albo... jest coś, co Postgresowi nie daje dostępu do 100% zasobów serwera.

Czy masz pomysł jak to zbadać? Czy mógłbyś zapodać lin na temat 
zarządzania buforami RAM przez bazę? Mógłbym w konfiguracji zmienić te 
wartości ale chciałbym być świadomym co czynię.

-- 
Pozdrawiam,
Marek
Re: PostgreSQL 8.2 zrywa połaczenia
#195590
Author: Roman Tyczka
Date: Mon, 30 Apr 2018 08:04
13 lines
1361 bytes
On Sun, 29 Apr 2018 11:12:30 +0200, Marek S wrote:

> Czy masz pomysł jak to zbadać? Czy mógłbyś zapodać lin na temat 
> zarządzania buforami RAM przez bazę? Mógłbym w konfiguracji zmienić te 
> wartości ale chciałbym być świadomym co czynię.

Tu na 100% uzyskasz odpowieź:

https://www.postgresql.org/list/

-- 
pozdrawiam
Roman Tyczka
Re: PostgreSQL 8.2 zrywa połaczenia
#195589
Author: M.M.
Date: Mon, 30 Apr 2018 08:48
38 lines
3258 bytes
On Sunday, April 29, 2018 at 11:12:44 AM UTC+2, Marek S wrote:
> W dniu 2018-04-28 o 23:40, M.M. pisze:
> 
> > Nie wiem co jest dla Ciebie oczywiste, a co zagadką. Niektóre ustawienia
> > buforów Postgresa powielają się z każdym podłączonym użytkownikiem.
> > Jeśli ustawiłeś 200MB, to po podłączeniu 50 użytkowników serwer
> > bazodanowy zajmuje 200MB*50=10GB, plus narzut, plus inne duperele i
> > oczywiście plus bufor współdzielony.
> 
> Chodziło mi o to, że problem jest bardziej po stronie administratora 
> samego serwera. Informację od administratora otrzymałem taką, że w 
> szczytowych momentach serwer wykorzystuje ok 2GB. Kłóci się to z tym, że 
> OOM Killer mimo wszystko aktywizuje się i zrzuca Postgresa, ale na 
> serwerach nie znam się więc nie dyskutowałem. Być może jest tak, że w 
> logowanie się 50 osób pożera całość RAM przez krótką chwilę a 
> administrator nie zdąży tego zauważyć i błędnie mnie poinformował. 
> Zjawisko jest zbyt regularne by było przypadkowe. Zawsze o porach 
> logowania występuje. Sporadycznie - pomiędzy nimi.
> 
> Albo... jest coś, co Postgresowi nie daje dostępu do 100% zasobów serwera.
> 
> Czy masz pomysł jak to zbadać? Czy mógłbyś zapodać lin na temat 
> zarządzania buforami RAM przez bazę? Mógłbym w konfiguracji zmienić te 
> wartości ale chciałbym być świadomym co czynię.
> 
> -- 
> Pozdrawiam,
> Marek

Jest tego trochę...

Zobacz:
$ sysctl -w kernel.shmmax=17179869184
$ sysctl -w kernel.shmall=4194304

https://www.postgresql.org/docs/9.3/static/kernel-resources.html

Od razu mówię, na wirtualu nie ustawisz tych parametrów.
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads