Добрый вечер, Илья.

Благодарю за рекомендации!
По логам для Mastodon запросы идут в основном по протоколу HTTP/1.1, а по 
HTTP/2 протоколу
раз в 10 меньше, если сравнить сегодняшний лог.
 
Для Mastodon сейчас пытаюсь разобраться и оптимизировать конфигурацию для него:
https://github.com/mastodon/mastodon/pull/19644
 
Вполне возможно, что мог что-то упустить :)
 
Вы писали 4 января 2024 г., 23:25:28:
 
> как можно поступить в данном случае.

> Mastodon - судя по описанию

> 1) written using ruby
> 2) туда ходят браузеры

> из первого я бы предположил, что в конфиге есть proxy_pass (или аналог), а 
> значит нагрузка будет не sendfile-овая
> из второго - в общих чертах, если есть браузеры, то примерно в 100% ответ 
> "да" для http/2 и http/3

> http2 и http/3 делают для браузера более кайфово. ценой некоторого доп 
> расхода цпу. браузер себя лимитирует 2-мя tcp
> сессиями, в рамках http/1.1 браузер может скачивать одновременно 2 объекта. 
> современная верстка предполагает несколько десятков css, js, png файлов,
> в http/2 есть мультиплексирование запросов внутри одной сессии, за счет чего 
> браузер может одновременно качать все файлы, не дожидаясь каждого отдельно.
Для оптимизации я ещё настроил автоматическое предварительное сжатие 
статических файлов в brotli и gzip форматы присутствующих в пакетах 
Mastodon/Peertube в NixOS.
 
> еще http/2 более кайфово для браузера сжимает трафик за счет дедупликации 
> хедеров и подобных мелочей (что тоже немного увеличивает расход процессора)
> если у вас что-то, куда ходит браузер (вы говорите, блог на Mastodon), то 
> вопрос включения или не включения http/2 обычно - насколько браузеру будет 
> кайфовее, а не
> насколько вырастет расход процессора.
Ну до 2-го пункта врядли дойдёт дело. Параметр для0-RTT использую в HTTP/3 
протоколе :). Протестировать сайт с 
помощью pagespeed надо как-нибудь протестировать, не забыть.
> я бы посоветовался с каким-нибудь SEO из вебстудии, но то, что навскидку 
> приходит в голову ...

> 1) https://pagespeed.web.dev/ (с включенным и выключенным http/2)
> 2) сертификаты EC
> 3) 0-RTT (early data)

А вот с разницей в противоположных результатах скорости между виртуальным и 
физическим сервером надо
бы как-то разобраться, хотя бы понять почему так происходит :)
 
 
-- 
С уважением,
 Izorkin                          mailto:izor...@gmail.com
_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
https://mailman.nginx.org/mailman/listinfo/nginx-ru

Ответить