Имея дело с растущим спросом на системные ресурсы на веб-сайте, я подумал:
Какой самый быстрый способ разместить одну статическую веб-страницу на одном сервере в памяти?
Не стесняйтесь просить разъяснений, в основном пытаясь максимально сократить стек приложения, использовать как можно меньше памяти, но сохранять систему в памяти как можно больше. Предположение, что статическая веб-страница не будет превышать https и будет иметь размер 20 КБ, без изображений и встроенного CSS / JS; это означает, что это один файл. Больше очков за более низкую стоимость / ресурсные системы.
Хотите запускать Linux 2.4 с файловой системой памяти и Tux? Это по-прежнему одна из самых быстрых, которые я пробегал. Самая высокая тактовая частота процессора, которую вы можете найти, и все готово.
Лак будет №2. Мы направили на него шесть машин, генерирующих запросы, заполнили канал 10 ГБ, и он просто продолжает работать без намека на то, что на исходной машине возникли какие-либо проблемы.
Nginx может обслуживать контент из memcached и может кэшировать его внутренне.
Пользовательское приложение C, которое реализует минимальное подмножество HTTP и выводит страницу, ранее сохраненную в переменной.
tHTTPd - самый легкий HTTPd Я знаю, и он по-прежнему поддерживает довольно много основных функций. Это открытый исходный код, на порядок быстрее, чем Apache, и скомпилировано 50 КБ. В небольших запросах страниц Zeus превосходит его, но не имеет функций и не является бесплатным / oss (однако вы получаете поддержку).
Самая быстрая вещь, которую я видел в этой области, - это использование одного или нескольких Зевс Устройства ZXTM в качестве кэша перед «правильным» веб-сервером.
Вся BBC обслуживает свой статический контент из 4-х из этих вещей - они 64-битные, поэтому могут кэшировать огромные объемы и могут загружать несколько сетевых адаптеров 10 Гбит / с - я, конечно, никогда не видел, чтобы что-то делало только это, даже коробки CDN Cisco. Тем не менее, они ДЕЙСТВИТЕЛЬНО дорогие, но мы их используем, и они просто поразили меня.
Я уверен, что есть бесплатный эквивалент, о котором я не знаю.