multi-thread server pod Linux

5 отговора 368 прегледа
#1

multi-thread server pod Linux

Здравейте,
Имам многонишков socket server(нишките са pthread),
но при заяваки от прекалено много клиенти
на server ми изплюва сигнал SIGSEGV и грешка
"Too many open files". Пробвах да вдигна броят на файловите
дескриптори посредством setrlimit но след това пак изплюва
сигнал SIGSEGV и грешка "Resource unavailabel".
Та випроса ми е как да разреша този проблем.
Разцепих се да ровя из google да настроивам TCP за max
брой connection и т.н. но ...............
Server се тества с около 4800 connection
Дистрибуцията е Suse 9.0

Благодаря !

Отговор
в отговор на ilko #2

Re: multi-thread server pod Linux

Пробва ли да му сетнеш ulimit от shell-a (ако си на bash).
Съгласен съм че в общия случай това не е решение и ulimit би трябвало да прави същото което ти със setrlimit.

---
In God we Trust (all others must submit a X.509 certificate)
Отговор
в отговор на Nobby #3

Re: multi-thread server pod Linux

Да пробвах.
И ми изхвърли грешка "Resource unavailable"
Май ще трябва да прекомпелирам kernel

Отговор
в отговор на ilko #4

Re: може да се припознавам

я дай e-mail:) и icq:)

Отговор
в отговор на alex #5

Re: може да се припознавам

Az sym Sasho,
Iliqn u4ihme zaedno v uni-to
==>varshilov_i@abv.bg

Отговор
в отговор на ilko #6

FD_SETSIZE

поиграй си с макроса FD_SETSIZE. трябва да ти е дефиниран във всички файлове на програмата. най-лесно става като го включиш в опциите на компилатора в makefile. примерно -D FD_SETSIZE=10000. той влияе на select() най-вече но мисля, че и на други неща.

Отговор