Запросы HTTP обслуживания байта Nginx

Наши серверы Hyper-V имеют ~50GB C: диск. Сервер Hyper-V берет приблизительно 10 ГБ для установки, Независимо от того, что размер RAM для файла подкачки, и Вам нужна некоторая комната дыхания, по крайней мере еще 10 ГБ.

Это предполагает использование Сервера Hyper-V; не Windows Server + Роль Hyper-V. Если это просто будет хостом, который я настоятельно рекомендую, используйте Сервер Hyper-V. Установка даже базового сервера плюс роль возьмет больше, и Вы испытаете желание установить другие вещи на нем, которые вызовут чрезмерное увеличение размера...

0
задан 4 January 2014 в 18:46
1 ответ

Это возможно с использованием Nginx ' mod_lua , но это может быть довольно сложно реализовать и потребует большого количества изменений в серверном приложении, потому что ваши серверные части должны быть может отвечать частями страницы, которые Nginx может собрать вместе. Вам потребуется написать lua-скрипты в конфигурации Nginx для сбора вывода нескольких бэкэндов (это можно делать параллельно), а затем объединить их в один ответ.

Кроме того, вы также можете напрямую использовать OpenResty, вы можете получить его из здесь . Это модификация Nginx, которая была сделана в основном авторами mod_lua и очень хорошо подходит для ваших требований.

Чтобы выполнять несколько запросов к бэкэнду параллельно, необходимо использовать ngx. location.capture_multi в ваших скриптах lua. Это пример, демонстрирующий синтаксис:

res1, res2, res3 = ngx.location.capture_multi{
    { "/foo", { args = "a=3&b=4" } },
    { "/bar" },
    { "/baz", { method = ngx.HTTP_POST, body = "hello" } },
}

Вы можете найти более подробную документацию о синтаксисе здесь .

0
ответ дан 5 December 2019 в 14:28

Теги

Похожие вопросы