Pagina 1 di 1

Ottimizzazione VPS

Inviato: lunedì 4 agosto 2025, 0:41
da Matteo
Crea o modifica il file /etc/sysctl.d/99-game-tuning.conf e inserisci:

Codice: Seleziona tutto

nano /etc/sysctl.d/99-game-tuning.conf

Codice: Seleziona tutto

# --- Scheduler ---
# Processi figli non rubano subito la CPU: maggiore stabilità per i server
kernel.sched_child_runs_first = 0

# --- Socket e backlog ---
# Dimensione massima della coda di connessioni in attesa (default 128)
net.core.somaxconn = 4096

# Buffer di ricezione/invio più grandi (valgono anche per UDP)
net.core.rmem_max = 16777216
net.core.wmem_max = 16777216

# Aumenta la coda di pacchetti in arrivo prima che vengano droppati
net.core.netdev_max_backlog = 250000

# --- UDP tuning ---
# Memoria massima allocabile dallo stack UDP (min, default, max in pagine)
net.ipv4.udp_mem = 3145728 4194304 16777216

# Dimensione minima dei buffer UDP
net.ipv4.udp_rmem_min = 16384
net.ipv4.udp_wmem_min = 16384

# Buffer opzionali massimi per ogni socket
net.core.optmem_max = 25165824

# --- TCP (solo per servizi secondari, RCON, DB ecc.) ---
# Puoi lasciarlo o commentarlo: non influisce sul gameplay UDP
# net.ipv4.tcp_low_latency = 1

# riduce latenza scheduler
kernel.sched_migration_cost_ns = 5000000

# meno wakeup inutili
kernel.sched_autogroup_enabled = 0

Variante più leggera:

Codice: Seleziona tutto

# --- Scheduler ---
# Migliora stabilità CPU senza rompere fairness su VPS
kernel.sched_child_runs_first = 0
kernel.sched_migration_cost_ns = 5000000
kernel.sched_autogroup_enabled = 1

# --- Socket e backlog ---
# Coda connessioni (join server, handshake)
net.core.somaxconn = 8192

# Buffer rete (UDP + TCP stack)
net.core.rmem_max = 16777216
net.core.wmem_max = 16777216
net.core.rmem_default = 262144
net.core.wmem_default = 262144

# Backlog pacchetti in arrivo (ridotto da valore troppo alto)
net.core.netdev_max_backlog = 65535

# --- UDP tuning (GAME SERVER CORE) ---
net.ipv4.udp_mem = 2097152 3145728 8388608
net.ipv4.udp_rmem_min = 16384
net.ipv4.udp_wmem_min = 16384

# Buffer extra per socket
net.core.optmem_max = 25165824

# --- TCP (servizi secondari: rcon, db, ssh tunnels ecc.) ---
net.ipv4.tcp_fin_timeout = 15
net.ipv4.tcp_tw_reuse = 1

# Protezione base rete
net.ipv4.tcp_syncookies = 1

# Port range utile per server
net.ipv4.ip_local_port_range = 1024 65535

Codice: Seleziona tutto

sudo sysctl --system
Disabilita power saving aggressivo sulla CPU (che causa spike di latenza):

Codice: Seleziona tutto

sudo apt install cpufrequtils
echo 'GOVERNOR="performance"' | sudo tee /etc/default/cpufrequtils
sudo systemctl enable cpufrequtils
sudo systemctl start cpufrequtils