хай всем
в общем есть софтина - у неё морда на питоне (quixote), сам рабочий код который принимает входящие соединения от клиентских приложений написан на с++ и импортирован (всё сделано через swig и работает прекрасно).
когда начал тестить - обнаружилось что при большом кол-ве входящих соединений тред в котором работает кихот виснет намертво в таком виде:
Thread 1 (Thread -1208387904 (LWP 4383)):
#0 0x00c35402 in __kernel_vsyscall ()
#1 0x0046beb1 in ___newselect_nocancel () from /lib/libc.so.6
#2 0x00112938 in _PyTime_DoubleToTimet ()
from /usr/lib/python2.4/lib-dynload/timemodule.so
#3 0x005ca6c3 in PyCFunction_Call () from /usr/lib/libpython2.4.so.1.0
#4 0x0060331c in PyEval_EvalFrame () from /usr/lib/libpython2.4.so.1.0
#5 0x00603aac in PyEval_EvalFrame () from /usr/lib/libpython2.4.so.1.0
#6 0x00604a1c in PyEval_EvalCodeEx () from /usr/lib/libpython2.4.so.1.0
#7 0x00604b8e in PyEval_EvalCode () from /usr/lib/libpython2.4.so.1.0
#8 0x0062100a in PyErr_Display () from /usr/lib/libpython2.4.so.1.0
#9 0x00622312 in PyRun_SimpleFileExFlags () from /usr/lib/libpython2.4.so.1.0
#10 0x00622d99 in PyRun_AnyFileExFlags () from /usr/lib/libpython2.4.so.1.0
#11 0x00628ef1 in Py_Main () from /usr/lib/libpython2.4.so.1.0
#12 0x080485ba in main ()
(gdb)
ulimit -n unlimited
плюс в sysctl.conf увеличены все параметры:
net.ipv4.ip_forward = 0
net.ipv4.conf.default.rp_filter = 1
net.ipv4.conf.all.rp_filter = 1
kernel.sysrq = 0
kernel.core_uses_pid = 1
net.ipv4.tcp_fin_timeout = 25
net.ipv4.tcp_keepalive_time = 1200
net.ipv4.tcp_window_scaling = 1
net.ipv4.tcp_sack = 1
net.ipv4.tcp_fack = 1
net.ipv4.tcp_timestamps = 1
net.ipv4.tcp_syncookies = 1
net.ipv4.ip_local_port_range = 1024 65000
net.ipv4.tcp_reordering = 5
net.ipv4.tcp_synack_retries = 2
net.ipv4.tcp_syn_retries = 3
net.ipv4.tcp_max_syn_backlog = 2048
net.core.netdev_max_backlog = 1024
net.core.hot_list_length = 256
net.ipv4.tcp_max_tw_buckets = 360000
net.core.rmem_default = 65535
net.core.rmem_max = 8388608
net.ipv4.tcp_rmem = 4096 87380 8388608
net.core.wmem_default = 65535
net.core.wmem_max = 8388608
net.ipv4.tcp_wmem = 4096 65535 8388608
net.ipv4.tcp_mem = 8388608 8388608 8388608
net.core.optmem_max = 40960
виснет всё время на этом _PyTime_DoubleToTimet.
думал где то портится память, прогнал valgrindom - всё идеально.
подскажите плиз, запарился уже искать :) спасибо!
Ответ на:
комментарий
от vladie
Ответ на:
комментарий
от theserg
Ответ на:
комментарий
от theserg
Ответ на:
комментарий
от theserg
Ответ на:
комментарий
от vladie
Ответ на:
комментарий
от vladie
Ответ на:
комментарий
от zwon
Ответ на:
комментарий
от vladie
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум Nginx upstream + SYN_SENT висят подключения в очереди. (2017)
- Форум Mayday! Mayday! SYN DDOS (2018)
- Форум TX packets - откуда errors и overruns в ipconfig? (2009)
- Форум Максимальное кол-во одновременно открытых сокетов (2004)
- Форум Помогите iptables докрутить (2011)
- Форум дофига открытых сокетов (2014)
- Форум Количество открытых сокетов (2002)
- Форум Ошибка открытия сокета. (2004)
- Форум максимальное кол-во слушающих сокетов (2007)
- Форум максимальное кол-во открытых файлов (2008)