сб, 6 янв. 2024 г. в 20:48, <izor...@gmail.com>: > Добрый вечер, Максим. > > Теперь ясно, благодарю :) > > Вы писали 6 января 2024 г., 21:27:52: > > > Просадка производительности, которую вы наблюдаете для HTTP/2 при > > включённом kTLS - не собственно из-за kTLS, а из-за того, что у > > вас включён sendfile, и при включённом kTLS становится возможным > > его использование. А в случае HTTP/2 это выливается в большое > > количество syscall'ов из-за HTTP/2-фрейминга. > > > Если очень хочется получить включённый sendfile и kTLS в случае > > HTTP/1.x, и выключенный в случае HTTP/2, то можно сделать как-то > > так (слегка адаптировано из > > > https://mailman.nginx.org/pipermail/nginx-devel/2022-September/NSHDCLL2TY3Q536CO5MAKXSC3HCIMUNF.html > ): > > > server { > > listen 443 ssl; > > > http2 on; > > > location / { > > if ($server_protocol != 'HTTP/2.0') { > > rewrite ^(.*) /sendfile$1 last; > > } > > > sendfile off; > > } > > > location /sendfile/ { > > alias html/; > > sendfile on; > > } > > } > > Да, были предположения после тестов, что для статики лучше делать > отдельный домен и активировать на нём HTTP/1.1 и kTLS. Но такой > вариант сработает только с теми web-сервисами, которые позволяют > выводить статику в отдельный домен. > К примеру, есть сервис Peertube для видео-хостинга. У него сложная >
складывается ощущение, что перескакивание с "а вот есть еще PeerTube", заставляет как-то пытаться связать новый вопрос с предыдущим тредом, и связь неочевидна. выскажу осторожное предположение, что может стоит лимитировать один вопрос на тред > конфигурация nginx, и такой вариант конфигурации применить сложно, > спокойно можно что-то упустить, особенно пользователю, который > глубоко не разбирается в Nginx. Видеоплатформа позволяет выводить > статику в отдельные домен, но только с использованием S3 хранилища. > Получается, что для Peertube, лучшим вариантом будет отключить > протокол HTTP/2, активировать кTLS и использовать только протоколы > HTTP/1.1 и HTTP/3. > > > Но смысла в этом не очень много, так как при включённом HTTP/2 > > рассчитывать на клиентов, которые придут по HTTP/1.x, не имеет > > особого смысла, таких клиентов будет исчезающе мало. Если хочется > > получить высокую производительность при скачивании больших файлов, > > и при этом использовать HTTP/2 (и/или HTTP/3), то имеет смысл > > заводить отдельный виртуальный сервер, в котором разрешать только > > HTTP/1.x (а также sendfile и kTLS), и раздавать файлы с него. > > > Для HTTP/3 не работают ни kTLS, ни sendfile, соответственно > > влияния на производительность HTTP/3 от включения kTLS не будет. > > > -- > С уважением, > Izorkin mailto:izor...@gmail.com > _______________________________________________ > nginx-ru mailing list > nginx-ru@nginx.org > https://mailman.nginx.org/mailman/listinfo/nginx-ru >
_______________________________________________ nginx-ru mailing list nginx-ru@nginx.org https://mailman.nginx.org/mailman/listinfo/nginx-ru