> Хэндлер должен быть один для всех однотипных операций
Да, это детали конкретной реализации, там нужно контекст передать, по этому создается новый интсанст хендлера.
Если перечислять все кроме WatcherObject и HandlerMethod, тогда нужно начинать с того что accept socket создает новый fd в процессе, а дальше ещё много аллокаций с сокетом найдется в коде бекенд приложения :)
> ... зато придется выполнять работу, которую более эфеективно делает
> ядро (разбирать, какому логическому соединению принадлжеат пакеты)
Никакой особой работы выполнять не придется, просто в ответе (Response) нужно будет передавать id запроса (Request), это все делается на уровне фрейморка бекенд приложения. Уверен request->id будет меньше потреблять памяти, чем отдельное соединения, которое требует, +1 fd в процессе, +1 WatcherObject, -1 fd лимита OS...
> Тогда уж лучше на UDP переходить :)
Я только за!
Что вы думаете про ещё один експерементал протокол гугла - QUICK?
Он на udp, и возможно он лучше подходит для общения Nginx с бекендами...