Что вы думаете о сайтах для тестирования производительности? Я только что провёл 3 теста:
GTmetrix, PageSpeed и WebpageTest. Конечно, есть некоторые различия, но и сходства тоже. Вчера я получил оценку C на GTmetrix, так что B — это крутое улучшение, хотя не совсем понятно, откуда оно взялось.
По моим данным, самое частое в результатах этих трёх тестов для моего сайта — это время загрузки JavaScript и CSS. Но ведь JS вообще не под моим контролем? На GTmetrix эти два URL помечены как неиспользуемый JS, но ведь это встроенные в Discourse файлы, не так ли?
Отчасти. Всё это заставило меня задуматься, ха-ха.
Это было моим основным предположением, но, эх, мне тоже не нравятся некоторые оценки на этих сайтах по производительности (хотя, да, возможно, это проблемы хостинга?)
Не должно быть высокой нагрузки. Всего несколько зарегистрированных пользователей. Сайт создан, наверное, 12 дней назад. Для некоторых пользователей в часы пик, когда сервер находится в этом регионе, кажется медленным, но для других всё в порядке. Характеристики сервера/VPS:
3 ГБ ОЗУ
2 vCPU
35 ГБ SSD
1 Гбит/с безлимитный трафик
1 x IPv4
KVM
Ubuntu 22
РЕДАКТИРОВАНИЕ: Ой, извините, не был уверен, отвечаете ли вы мне или Роберту.
CDN немного помогает, если у вас большая глобальная аудитория и/или VPS размещён на маломощном сервере. Сайты на PHP могут получить чуть больший прирост, но правильная политика кэширования даёт гораздо больше.
Характер дискуссии имеет тенденцию нивелировать такие улучшения, или, если так можно выразиться: в такой помощи нет необходимости.
У сервисов метрик много проблем, и крайне редко их можно воспринимать «как есть» в качестве советов.
Да, именно это меня немного смущает. По сути, все пункты, за которые мне снижают баллы, кажутся встроенными в Discourse (долгая загрузка JS-файлов, блокировка и т. д.) + возможно, комбинация с моей темой. Значит ли это, что сайт на Discourse никогда не будет иметь хороший балл по этим показателям, лол? Хотя я в этом сомневаюсь. Особенно когда речь идёт о форумах.
Именно так. Вы можете немного помочь, убрав некоторые (ненужные) функции, в основном через плагины, но… реальной пользы от этого нет.
Хорошая новость в том, что это вообще не имеет значения. И более серьёзными «узкими местами» являются интернет-соединение ваших пользователей и их устройства.
Если у вас слишком много свободного времени, вы можете начать разрабатывать это, то и другое, но всё, что вы получите, — возможно, секунду здесь и секунду там, и эти запасы времени можно измерить только в лабораторных тестах.
Пусть команда и разработчики плагинов/тем делают свою работу. Этого достаточно.
Если бы у вас была «настоящая» веб-платформа вроде WordPress, Drupal и т. д., существовало бы множество других трюков. Сейчас решение принципиально иное.
И конечно — я всего лишь домашний администратор/веб-мастер, и меня поправят, если я не прав. Но я не ошибаюсь
Кажется, время блокировки всегда является главной проблемой (по крайней мере, для меня, когда я запускаю эти тесты). Так что, я полагаю, разработчикам Discourse нужно оптимизировать это лучше, или? Честно спрашиваю, не пытаясь критиковать.
Это не то, что видит человек. Ещё раз: Discourse — это веб-приложение, которое сначала перемещает необходимые файлы, а после этого всё (почти) представляет собой просто JSON-текст. Этот тест каким-то образом работает, когда сайт генерирует страницы на уровне сервера и отправляет клиенту читаемый HTML. Как это делает, например, WordPress.
И это время отнюдь не плохое.
То, что вы сейчас предлагаете, подразумевает, что Discourse должно быть полноценным приложением и не должно быть доступно через браузеры, например.