Nginx обслуживает файлы mp4 медленнее, чем PHP

Я пытаюсь понять, почему мой Nginx обслуживает (инициализирует) файлы mp4 медленнее, чем PHP. Когда я обновляю (F5) страницу, на которой включен видеоплеер, мы видим, как на изображении ниже mp4 был завершен, инициализирован и готов к воспроизведению через 12 секунд.

скриншот сети

Вот мой конфиг nginx:

keepalive_timeout 5;
sendfile on;

location /video/ {
    alias /var/www/html/web/;
    aio threads;
    mp4;
    mp4_buffer_size       1m;
    mp4_max_buffer_size   5m;

    secure_link $arg_md5,$arg_expires;
    secure_link_md5 "$secure_link_expires$uri$hash";

    if ($secure_link = "") { return 403; }
    if ($secure_link = "0") { return 410; }
}

Далее для тестов я заменяю исходную ссылку в видеоплеере, сгенерированную из PHP-скрипта.

Ответ от PHP был сгенерирован фреймворком Symfony, как здесь:

public function playAction(string $webDir)
{
    $response = new BinaryFileResponse($webDir . '/uploads/file.mp4');
    $response->setAutoEtag();
    $response->headers->set('Content-Type', 'video/mp4');

    BinaryFileResponse::trustXSendfileTypeHeader();

    return $response;
}

И подача mp4-видео с помощью PHP была готова к воспроизведению через 3 секунды.

Как это возможно? Nginx медленнее реагирует на статический файл mp4, чем PHP?

видео nginx php

0

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *