Przykład 1
- 8 rdzeni
- 3 instancje
- limit 100
51
Jaki pool przy 8 rdzeniach i 3 instancjach? 51. Heurystyka, nie live DB.
Wpisz rdzenie, instancje i opcjonalny limit. 8 i 3 dają 51. 4 i 2 dają 18. 16 i 4 dają 132. To (rdzenie×2+1)×instancje, nie sonda PostgreSQL.
To heurystyka PostgreSQL rdzenie×2+1 na instancję, nie odczyt max_connections. Limit requestów jest na limitach API.
Wprowadź dane i kliknij Oblicz.
Pool połączeń DB na tej karcie mnoży heurystykę przez instancje. 8 rdzeni i 3 instancje dają 51. 4 i 2 dają 18. 16 i 4 dają 132. Wzór to (rdzenie × 2 + 1) × instancje. Karta nie czyta max_connections z serwera.
Pole db-cores to rdzenie. Pole db-inst to instancje aplikacji. Pole db-max-conn jest opcjonalnym limitem. 8 × 2 + 1 = 17, razy 3 daje 51. 4 × 2 + 1 = 9, razy 2 daje 18. 16 × 2 + 1 = 33, razy 4 daje 132.
51 nie schodzi z pg_settings. 18 nie jest PgBouncer. 132 przy limicie 100 tylko pokazuje, że szkic przekracza wpisany sufit. Karta nie loguje się do bazy.
Cache hit ratio obok liczy requesty. Limity API liczą okno. Tu 8 i 3 zostają 51, sam pool ze wzoru.
Wpisz 8, 3 i 100, potem Oblicz. Wynik to 51. Przecinek nie jest potrzebny, pola są całkowite. Zero w rdzeniach nie daje poolu.
8 i 3 dają 51. 4 i 2 dają 18. 16 i 4 dają 132. Inna liczba instancji przy 8 zmienia 51.
pool = (rdzenie × 2 + 1) × instancje. Limit db-max-conn jest wpisanym sufitem, nie sondą.
Pool = (rdzenie × 2 + 1) × instancje. 8 i 3 dają 51. To nie live DB.
51
Jaki pool przy 8 rdzeniach i 3 instancjach? 51. Heurystyka, nie live DB.
18
Jaki pool przy 4 i 2? 18.
132
Jaki pool przy 16 i 4? 132. Szkic, nie sonda max_connections.
51. (8 × 2 + 1) × 3. Heurystyka, nie live DB.
18. (4 × 2 + 1) × 2.
132. (16 × 2 + 1) × 4.
Nie. Karta nie łączy się z bazą. Limit wpisujesz sam.
To wpisany sufit. 51 mieści się w 100. 132 przy 100 tylko porównuje szkic.
Nie. Sam wzór rdzenie×2+1 razy instancje.
Nie. Rdzenie i instancje muszą być dodatnie.
Tam 60 i 15 min dają 900. Tu 8 i 3 dają 51.
Pole jest całkowite. Przykłady trzymają 8, 4 i 16.
Pool to zestaw wcześniej otwartych połączeń do bazy, które aplikacja pożycza i oddaje zamiast otwierać TCP + auth przy każdym zapytaniu. Ten kalkulator stosuje heurystykę rdzenie × 2 + 1 na instancję i — jeśli podasz max_connections — sprawdza, czy łączny pool nie wybucha limitu bazy.
Gdy równoległych żądań jest więcej niż wolnych połączeń, wątki czekają w kolejce poola. Objawy: rosnąca latencja p95/p99, timeouty „connection acquisition”, spadek RPS mimo wolnego CPU aplikacji.
Przykład: 80 równoległych requestów potrzebujących DB, pool=20 → większość czeka. Podniesienie poola (w granicach limitu bazy) często usuwa timeouty — o ile baza ma IOPS/CPU na obsługę większej równoległości.
max_connections = błędy „too many connections” dla nowych klientów.