Pro velké instalace systému Flexi je nezbytné provést nastavení instance PostgreSQL na souboru postgresql.conf (přesné umístění v Umístění adresářů Flexi na Vašem počítači):

  • zvýšení počtu spojení max_connections (cca 30 na jednoho možného klienta, při použití REST API či webového/mobilního přístupu ještě více). Pokud dáte hodnotu větší než 200, je potřeba také zkontrolovat hodnotu shared_buffers.

  • zvětšit počet zámků na transakci – minimálně na počet tabulek: [Lock Management] max_locks_per_transaction = 512

Je možné nastavit i více zámků (např. pokud firma dlouho nevytvářela aktualizace, nemusí množství 500 stačit; zatím ale nemáme zkušenost s nikým, komu by počet nestačil).

Upozornění: nezapomeňte nastavit automatické zálohování!

Vacuum

Standardně se automaticky pouští proces autovacuum. V některých případech, např. pokud databáze přeroste určitou mez, přestane ruční vacuum fungovat. Je tedy vhodné některé parametry zvednout.

MS Windows

V MS Windows se můžete setkats problémem s více jak 125 spojeními:

PostgreSQL wiki: Cannot run with more than about 125 connections

Zajímavé informace pro nastavení: http://postgres.cz/wiki/Desatero

Při větší zátěži disků pomáhá nastavení: checkpoint_segments. Optimální je nastavit ho na hodnotu 32. Nastavení je pak: checkpoint_segments = 32

Pokud používáte na serveru antivir ESET NOD32, můžete objevit další potíže. V tomto případě nepomůže z kontrol odstranit proces PostgreSQL, adresář, ani vypnutí NOD32. Funguje jen odinstalace, nebo použití nejnovější verze PostgreSQL.

PGTune

Pro konfiguraci postgresql se osvědčil nástroj pgtune z https://pgtune.leopard.in.ua/#/. Script dopočítává další hodnoty v konfiguraci jako shared_buffers, effective_cache_size atd. na základě nastaveného počtu připojení.

Našli jste odpověď?