Моя главная цель - обслуживать большое количество XML-файлов (> 1 млрд. Каждый <1 КБ) через веб-сервер.Файлы можно рассматривать как устаревшие, поскольку они будут модифицироваться внешним кодом с относительно очень низкой частотой (около 50 тыс. Обновлений в день).Файлы будут запрашиваться с высокой частотой (> 30 req / sec).
В настоящее время моя команда предлагает создать специальное Java-приложение для реализации протокола HTTP и использовать memcached для ускорения работы, сохраняя все данные файла.в RDBMS и избавлении от файловой системы.
С другой стороны, я думаю, достаточно настроить Apache Web Server или lighttpd.Кэширование можно оставить для кэширования дефалта ОС или веб-сервера.Нет смысла хранить данные в БД, если требуется один и тот же вывод и запрашивается только на основе имени файла.Не уверен, как memcached будет работать здесь.Также обновление внешнего кэша (memcached) при обновлении файла с помощью внешнего кода добавит сложности.
Также другой вопрос, если я решу использовать файлы, можно сохранить их в каталоге, например \ a \ b \ c \ d.xml и доступ через abcd.xml?Или я должен поместить все 1 млрд. Файлов в один каталог (не уверен, что ОС разрешит это или нет).
Это НЕ веб-сайт, а API-интерфейс приложения в закрытой сети, поэтому Cloud / CDN бесполезен.
Я планирую использовать CentOS + Apache / lighttpd.Предложите любое альтернативное и наилучшее возможное решение.
Эта является единственной общедоступной заметкой, найденной по этой теме, и она также немного устарела.