Согласно C10k и в этом документе , пропускная способность серверов с 1 потоком на соединение снижается по мере того, как подключается все больше и больше клиентов. и создается все больше и больше потоков. Согласно этим двум источникам, это связано с тем, что чем больше потоков существует, тем больше времени тратится на переключение контекста по сравнению с фактической работой, выполняемой этими потоками. Серверы Evented, кажется, не так сильно страдают от снижения производительности при большом количестве подключений.
Однако серверы evented также переключают контекст между клиентами, они просто делают это в пространстве пользователя.
Меня больше всего интересует, как ядро Linux обрабатывает переключение контекста, но также приветствуется информация о других операционных системах.