У меня есть PHP-скрипт, который обслуживает множество небольших файлов (> 100 000) с размерами до 10 МБ. Он в основном загружает запрошенный файл в память и передает его клиенту. Из-за контроля доступа я не могу обслуживать эти файлы напрямую через Apache и мне нужен скрипт, обернутый вокруг него.
Если есть большой трафик (> 150 Мбит), мой жесткий диск интенсивно используется и представляет собой ограничение для масштабирования. У меня была идея, что я могу использовать memcached для уменьшения загрузки жесткого диска, так как у меня есть 10 ГБ оперативной памяти, но у memcached есть максимальный размер элемента 1 МБ. Тогда я подумал, что мог бы использовать PHP-APC, но его поведение, если в кеше не хватает памяти (полный сброс), недопустимо.
Что бы вы сделали, чтобы уменьшить нагрузку ввода-вывода?
Спасибо