🐘 3) Paramétrage PostgreSQ
Notation : RAM = mémoire totale ; RAM_PG = budget PG (souvent 60–75% si serveur dédié). Les valeurs ci-dessous sont des points de départ à valider sur tes workloads.
3.1
Mémoire principale
shared_buffers, effective_cache_size, work_mem, maintenance_work_mem, wal_buffers — avec formules RAM_PG.
OLTP / OLAP / mixte RAM_PG 60–75%
3.2
WAL, checkpoints, durabilité
wal_level, synchronous_commit, max_wal_size, checkpoint_timeout, checkpoint_completion_target.
write-heavyRPO/RTO
3.3
Background writer & autovacuum
Garder un autovacuum actif, ajuster workers, naptime, scale_factor global + par table, surveiller freeze.
age(datfrozenxid)
3.4
Planner & parallélisme
random_page_cost, effective_io_concurrency, workers parallèles, JIT selon OLTP/OLAP.
NVMe → RPC bas
3.5
Temp & tri
Déplacer temp_tablespaces, surveiller log_temp_files, ajuster work_mem après mesure.
temp sur NVMe
3.6
Verrouillage, timeouts & robustesse
idle_in_transaction_session_timeout, statement_timeout, lock_timeout, max_locks_per_transaction.
OLTP: 1–5 s
