Membatasi jumlah koneksi di Linux

Jadi ini sebagai followup dari pertanyaan mas Ipang. Intinya karena websitenya itu kalau diakses hingga 1500 pengunjung biasanya RAM usagenya membengkak dan loading situsnya menjadi lambat. Jadi solusi yang diinginkan itu agar koneksi dari pengunjung ke server dibatasi, katakanlah hanya boleh 1000 saja saat bersamaan.

Solusi paling gampang kita pakai iptables dan langsung saja eksekusi perintah berikut:

iptables -A INPUT -p tcp --syn -m connlimit --connlimit-above 1000 --connlimit-mask 0 -j DROP
iptables -A OUTPUT -p tcp --syn -m connlimit --connlimit-above 1000 --connlimit-mask 0 -j DROP

Sedikit penjelasan, ini hanya memberi kuota koneksi pada jenis TCP dan baik input (trafik masuk) maupun output (trafik keluar) sama – sama dibatasi 1000 saja. Selebihnya akan otomatis dibuang (REJECT). Kalau dirasa kurang atau malah lebih bisa anda utak – atik sendiri angkanya.

Dan saya juga pernah membahas rate limiting dengan iptables, konsepnya mirip tapi kasusnya agak berbeda.

Sedikit share lagi. Apa yang diminta mas Ipang dengan angkanya itu tidak bisa dikatakan akurat. Maksud saya, 1 pengunjung (browser) itu sejatinya bisa membuka beberapa koneksi paralel ke server untuk mempercepat pemuatannya. Umumnya antara 4-8 koneksi.

Dan solusi yang sama, mungkin akan lebih baik dan akurat apabila dilakukan limitnya dari web server yang dipakai.

5 Comments

Tinggalkan Balasan ke Chandra Batalkan balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *