Этот сервер Lighttpd должен будет очень быстро обслуживать различные файлы изображений (скажем, около 500 запросов в секунду).
Размер каждого файла изображения составляет около 50-70 КБ, а их будет около 1000 или около того.
Как лучше всего настроить эффективный сервер lighttpd, который будет посвящен только этой задаче?
pd. Мне удалось найти ModMemCache, но вся информация кажется устаревшей.
Вам не нужно настраивать memcache, ваше управление виртуальной памятью ядра должно иметь возможность использовать вашу оперативную память для автоматического ускорения вашего сервера из коробки.
Загрузите только те модули, которые вам нужны, и обязательно загрузите mod_expire и установите даты истечения срока действия ваших файлов изображений, если они не собираются меняться. На этой странице подробно описаны настройки mod_expire: http://redmine.lighttpd.net/projects/lighttpd/wiki/Docs_ModExpire
Также вам необходимо увеличить максимальное количество открытых файловых дескрипторов в вашем файле конфигурации, иначе вы получите ошибки в файле журнала, и ваш сервер зависнет. На этой странице объясняется настройка файловых дескрипторов, а также содержится полезная информация для настройки производительности tcp ядра: http://redmine.lighttpd.net/projects/lighttpd/wiki/Docs_Performance
Lighttpd работает со статическими файлами, но вы можете сделать это намного лучше.
Я бы посоветовал вам попробовать только настройку правильного истечения срока действия на сервере lighttpd, работающем на порте 8080 или около того, а затем поместить выделенное решение для HTTP-кеширования на порт 80 перед ним. Лак был моим предложением, потому что он широко распространен и эффективен. С самого начала он будет хорошо работать с вашими заголовками с истечением срока действия, удерживающими кеш сервера в течение длительного времени, только если у вас есть файлы cookie, задействованные на хосте изображения, вам потребуется небольшая часть специальной конфигурации.