Jako, że system sypał mi ciągle błędami jak na screenie przyjrzałem się logom, a tam między innymi taka informacja:
Npgsql.PostgresException (0x80004005): 53300: remaining connection slots are reserved for non-replication superuser connections
Włączyłem sobie liczenie połaczeń i wyszło mi, że jest około 50 na stałe, a w pikach ponad 100 połączeń. A w konfigu postgres jest max_connection na 100 ustawione. Zwiększyłem wstępnie ilość połączeń dwukrotnie, ale pytanie które mam to czy taka ilość połączeń jest normalna w grupie około 30 ludzi obsługujących EZD? Czy może coś się dzieje czego nie zauważam?
to realnie aplikacje mogą używać tylko ~97 połączeń.
Po ich zajęciu Postgres blokuje wszystkie kolejne próby i daje dokładnie ten błąd.
Nawet przy 30 użytkownikach, połączeń do bazy danych jest więcej, szczególnie przy dodawaniu metadanych do dokumentów. EZDRP korzysta w tedy z puli max_connections oraz z puli superuser_reserved_connections (tak wynika z obserwacji). Samo zwiększenie parametrów max_connections w konfiguracji postgres nie załatwia tematu. Trzeba też w connection string ustawić ilość połączeń dodając parametr Maximum Pool Size=XXX. Warto też zmienic w konfiguracji superuser_reserved_connections na większą wartość ale bez przesady. Zmieniając te parametry, trzeba mieć na uwadze parametry serwera/maszyny wirtualnej z postgress (pamięć/rdzenie), zwiększanie ich znacznie podnosi zapotrzebowanie na zasoby.
Przepraszam że tak zapytam, Wy tu piszecie o 30 użytkownikach, jak to się w takim razie ma do podanej w instrukcji instalacji liczby użytkowników (1000, 2000 i więcej)?