DaevaornХорошо, уточню.
Я уверен, что апач вполне себе легко раздает статику в нужных для ТС количествах.
Когда апачу приходит запрос он делает форк. Сам форк – операция сравнительно затратная. Я помню про pre-fork, но оно не сильно решает проблему отжирания кучи памяти для каждого процесса.
Nginx. Есть мастер-процесс и несколько вокеров. Всё это фактически event-based система.
Из практики. Я сейчас поддерживаю старый проект. Он ещё на CGI. И там ооочень много статики (своя карта Москвы, например – почти пол миллиона файлов, которые просто так не закешируешь). Работает это так…
Есть nginx, который принимает все запросы. Запросы к страничкам он пердаёт апачу, а статику отдаёт сам. В общем-то всё работает удовлетворительно. Так, ради интереса, я пускал всё через апач: средняя нагрузка процессора с десяти процентов поднялась до пятидесяти, а память… цифр не дам, но где-то на порядок.
P.S. Я могу делать такие эксперименты, так как оно работает на виртуальной машине – все запросы идут через nginx гипервизора и достаточно только перенаправить порт вывода, т.е. сравнительно безопасно в плане падений. Если есть желание, предложите методику и я потестирую ещё, но для меня лично вопрос об апаче решён – апач, это штурмовой вертолёт, а не web-сервер.