; ============================================================================= ; 3E Eğitim — PgBouncer ; ============================================================================= ; pool_mode = TRANSACTION. Bu bir tercih degil, mimarinin dayanagi (AD-04): ; tenant context'i her zaman transaction icinde `SET LOCAL` ile set edilir. ; Session-level `SET` YASAKTIR — transaction pooling'de baglantilar arasinda ; sizar ve A tenant'inin context'i B'nin sorgusuna gecer (kirmizi cizgi 2). ; ; Backend: 3eegitim_postgresql container, internal port 5432. ; ============================================================================= [databases] ; ⚠ Sunucu ADRESIYLE yazilir, adiyla degil (Sets, 09.08.2026). Container adi ; yazildiginda her baglanti Docker'in gomulu DNS'ine bir sorgu uretir ve o sorgu ; gecikirse hata "veritabanina baglanilamiyor" diye okunur. Adres compose ; dosyasinda sabitlenmis durumda (172.29.0.0/24). ; Ana uygulama DB'si — Laravel. Transaction pool. 3eegitim = host=172.29.0.10 port=5432 dbname=3eegitim pool_mode=transaction pool_size=50 [pgbouncer] ; ─── Listener ────────────────────────────────────────────────────────────── listen_addr = 0.0.0.0 listen_port = 6432 ; ─── Auth ────────────────────────────────────────────────────────────────── ; Docker internal network; userlist dosyasi 0600 izinle tutulur. auth_type = plain auth_file = /etc/pgbouncer/userlist.txt ; ─── Pool ────────────────────────────────────────────────────────────────── pool_mode = transaction max_client_conn = 1000 default_pool_size = 50 min_pool_size = 10 reserve_pool_size = 10 reserve_pool_timeout = 5 server_idle_timeout = 600 server_lifetime = 3600 query_wait_timeout = 120 ; PgBouncer 1.21+ native prepared statement destegi — Laravel PDO transaction ; pool'da prepared statement kullanmaya devam edebilsin. max_prepared_statements = 200 ; ─── Admin / Stats ───────────────────────────────────────────────────────── admin_users = postgres stats_users = postgres ignore_startup_parameters = extra_float_digits,search_path,application_name ; ─── Logging ─────────────────────────────────────────────────────────────── log_connections = 0 log_disconnections = 0 log_pooler_errors = 1 ; ─── PID & socket ────────────────────────────────────────────────────────── unix_socket_dir =