> Thu Jun 29 14:38, Cyril A. Vechera <cyril@main.piter.net> wrote:
> > > From: Vladimir Vorobyev <bob@turbo.nsk.su>
> > >
> > > Он отчасти прав.
> > > Тем не менее сервер на тредах (или даже на селекте) действительно гораздо
> > > лучше традиционного форканного, но требует более тщательной проработки
> > > разумеется. Однако с не анонимным ftpd есть один минус - без форка сделать
> >
> > Кстати, а есть ли существенная разница между тредами и селектами
> > по производительности и ресурсоемкости?
> >
> > С user-level вроде бы понятно - там треды должны жрать больше ресурсов.
> >
> > А вот kernel-level? Ведь тоже селекты должны весить меньше?
> >
> Лично я бы делал прежде всего на селекте/пуле там где это возможно, но как
> правило это сильно сложнее в реализации чем на тредах. По большому счету
> треды прежде всего для математики и еще очень хороши при обработке больших
> массивов данных.
> Какого-то крупного прорыва чисто в сетевых приложения от них ожидать не стоит.
на примере freebsd
poll все-таки syscall и если много сокетов (~1000) при каждом
вызове в память ядра копируется довольно-таки много. селект передает много
меньше, но операция занесения/проверки дескриптора дороже чем у пола.
у других ос должно быть очень похоже.
если kernel-level тред использует дескрипторы с блокировкой при
чтении/записи, лишние syscall и select/poll не используется,
значит должно быть реально быстрее при большом числе коннектов.
Но вопрос, какие идут накладные расходы на само управление тредами?
=============================================================================
"inet-admins" Internet access mailing list. Maintained by East Connection ISP.
Mail "unsubscribe inet-admins" to Majordomo@info.east.ru if you want to quit.
Archive is accessible on http://info.east.ru/rus/inetadm.html