Metin2'de Lag ve Gecikmeye Neden Olan 4 Ana Unsur
- Devasa Boyutlara Ulaşan Syslog ve Syserr Dosyaları:
Oyun motoru her eşya hareketini ve hatayı metin dosyalarına yazar. Yoğun bir sunucuda günlük log boyutu 20-50 GB'a ulaşarak diski kilitler. - Kötü Optimize Edilmiş Quest Senaryoları:
Sürekli döngüye giren (when letter beginveyaserver_timer) hatalı Lua scriptleri CPU'yu %100 seviyesine kilitler. - MySQL Bağlantı Havuzunun Dolması (max_connections):
Gelen sorgular yanıtlanamadığında oyun çekirdeği kilitlenir vesocket errorvererek kanallar düşer. - P2P Portunun Dışa Açık Olması:
Dışarıdan gelen rastgele TCP paketleri P2P portu üzerinden core'u flood ederek dondurur.
Performansı İyileştiren Altın Ayarlar
1. FreeBSD sysctl Ağ ve Soket İyileştirmesi
/etc/sysctl.conf dosyasına aşağıdaki değerleri ekleyin:
kern.ipc.somaxconn=2048
net.inet.tcp.sendspace=65536
net.inet.tcp.recvspace=65536
net.inet.tcp.fast_finwait2_recycle=1
net.inet.tcp.blackhole=2
net.inet.udp.blackhole=1
2. Otomatik Log Temizleme Scripti
Sunucunuzun diskini loglardan arındırmak için bir temizlik komutu çalıştırın:
find /path/to/server -name "syslog" -delete
find /path/to/server -name "syserr" -size +100M -delete