Tampaknya server terbatas pada ~ 32720 soket ... Saya telah mencoba setiap perubahan variabel yang diketahui untuk menaikkan batas ini. Tetapi server tetap terbatas pada soket terbuka 32720, bahkan jika masih ada 4Go memori bebas dan 80% dari ...
Ini konfigurasinya
~# ulimit -a
core file size (blocks, -c) 0
data seg size (kbytes, -d) unlimited
scheduling priority (-e) 0
file size (blocks, -f) unlimited
pending signals (-i) 63931
max locked memory (kbytes, -l) 64
max memory size (kbytes, -m) unlimited
open files (-n) 798621
pipe size (512 bytes, -p) 8
POSIX message queues (bytes, -q) 819200
real-time priority (-r) 0
stack size (kbytes, -s) 2048
cpu time (seconds, -t) unlimited
max user processes (-u) 63931
virtual memory (kbytes, -v) unlimited
file locks (-x) unlimited
net.netfilter.nf_conntrack_max = 999999
net.ipv4.netfilter.ip_conntrack_max = 999999
net.nf_conntrack_max = 999999
Adakah pikiran? (Pertanyaan ini seperti yang ditanyakan pada stack-overflow tanpa hasil sejauh ini)
linux
networking
socket
TheSquad
sumber
sumber
Jawaban:
Saya telah menemukan apa yang membatasi segalanya:
Terima kasih untuk semuanya yang telah menjawab !
sumber
Anda mencari di tempat yang salah untuk yang ini; Anda tidak berlari ke batas pengguna, Anda berlari ke batas sistem yang umumnya kekuatan 15 dari 2 pada sistem 32-bit, yang saya kira sistem Anda menjadi. Memeriksa:
Tetapi Anda juga bisa mengubahnya; pada mesin 32-bit yang akan menjadi 2 ** 22 sebagai batas atas absolut, jadi:
Saya akan tertarik untuk mengetahui bagaimana Anda pergi.
sumber
Jika Anda benar-benar mencoba melihat jumlah soket maksimum yang dapat Anda buka koneksi, Anda dapat mencoba melihat cat / proc / sys / net / ipv4 / ip_local_port_range; ini adalah kisaran port yang akan digunakan kernel untuk soket keluar, dan memiliki default yang berbeda berdasarkan distribusi Anda. Mengaturnya ke sesuatu seperti '1024 65535' adalah seluas terbuka yang Anda bisa; lihat apakah itu bisa membantu.
sumber
Saya minta maaf jika sesuatu yang serupa dikatakan di utas, tetapi saya tidak punya waktu untuk membacanya sekarang: <
Dengan tampilan pertama saya melihat bahwa jumlah soket yang Anda sebutkan adalah sekitar setengah dari proses pengguna maksimum. Karena saya bisa menebak Anda memiliki proses yang terpisah untuk setiap soket (sebaiknya Anda menjalankan server atau sesuatu seperti itu)
Apa yang dapat Anda lakukan adalah memeriksa jumlah proses saat berikutnya Anda mencapai batas soket.
Hanya sebuah ide, saya tidak tahu apakah itu membantu.
sumber