Назад | Перейти на главную страницу

Nginx на ВМ на Дед. у корневого сервера очень низкая скорость загрузки

Я запускаю VMware ESXI в выделенном корне kimsufi с сетевым доступом 100 Мбит / с.

Поскольку у корня доступен только 1 общедоступный IPv4, а ESXi не может выполнять NAT для своих виртуальных машин, я назначил общедоступный IP-адрес виртуальной машине №1, на которой работает pfsense. Все остальные виртуальные машины проходят NAT через этот виртуальный маршрутизатор.

Я запускаю nginx на сервере Ubuntu на виртуальной машине № 2 и создал защищенный каталог, из которого я хочу напрямую загружать большие файлы (> 4 ГБ). Я использовал почти стандартную конфигурацию nginx, но опубликую ее, если она поможет.

Скорость загрузки, которую я получаю с этого сервера, очень низкая (256 Кбит / с) и намного ниже, чем у моего домашнего или серверного интернет-соединения.

Как я могу эффективно проверить, где находится узкое место (и какие параметры доступны в nginx для увеличения скорости загрузки)?

Чтобы иметь представление о том, что вы можете разумно ожидать от верхнего уровня, я бы попробовал прямую копию файла (scp или что-то еще) из вашего источника в место назначения. Это исключит любую конфигурацию nginx. Если вы все еще получаете 256 кбит / с, вы можете проверить потенциальные переменные ядра или возможность административного регулирования сети.


Nginx не будет быстрым способом передачи файлов, особенно если у вас один из более дешевых выделенных серверов. Вы добавляете уровни задержки / неэффективности помимо прямой копии файла. Для устранения неполадок вы также можете попробовать потоковую передачу нескольких файлов одновременно, чтобы узнать, получаете ли вы 256 кбит / с каждый или это число является вашим общим пределом.


Конфигурация nginx proxy_max_temp_file_size может быть очень маленькой. Вы можете увеличить это значение до числа, превышающего размер обслуживаемых вами файлов, что может помочь