Рендеринг на стороне сервера
Наибольшее влияние на повышение начальной производительности и показателей SEO будет иметь использование рендеринга на стороне сервера (SSR). SSR значительно увеличит количество краски с первым содержимым, что очень важно для SEO.
SSR помогает двумя существенными способами:
- Уменьшает начальный размер пакета, исключая время выполнения Angular.
- Посылая клиенту уже предварительно обработанный HTML-код.
Оба из них сокращают время первого наполнения (FCP) и время интерактивного (TTI).
Ознакомьтесь с официальной документацией для получения подробной информации: https://angular.io/guide/universal
Производство / Minified Build
Похоже, загружаемые скрипты не минимизированы, что не должно бытьслучай, если вы делаете производственную сборку (ng build --prod
). Минимизированные сценарии значительно уменьшают размер пакета. Также рекомендуется развертывать только производственную сборку конечного продукта.
Ленивая загрузка изображений (откладывать закадровые изображения)
После этого, как показали проверки Lighthouse, существуютмного изображений на этой странице, которые загружаются изначально. Откладывание изображений до тех пор, пока они не понадобятся, улучшит показатели FCP / TTI.
Вы, кажется, уже используете некоторую ленивую загрузку, но, похоже, она не выполняет работу, как это наблюдалось в DevTools. Проверьте этот пакет для более "угловой" нативной "ленивой загрузки": https://www.npmjs.com/package/ng-lazyload-image.
Размеры изображения (изображения правильного размера)
Помимо размеров пакета, вы можете посмотреть на уменьшение размеракартинки. Как указывает Lighthouse, существует потенциальная экономия в размере 1 с.
Это относится как к размеру файла, так и к размерам изображений.
Например, это изображение расположено в /assets/images/pages/regular/sections/header/1.webp
:
- 223Kb - вы можете поиграть с различными форматами файлов (PNG / JPEG) и качеством сжатия, чтобы уменьшить размер файла как есть.
- 1920x1100 - размерностьизображение, вероятно, может быть значительно уменьшено, учитывая, что это изображение на самом деле намного меньше на экране, на котором оно используется (внутри экрана iPhone).
Вы, вероятно, можете уменьшить это изображение до 40-50Kbиспользуя два из этих пунктов. То же самое предложение для изображения в /assets/images/pages/regular/sections/header/main-photo.webp
- размеры и размер файла могут быть значительно уменьшены.
Существуют и другие предложения (как указано в Lighthouse, например, удаление неиспользуемого CSS), но эти три, приведенные выше, дают преимущество. в SEO и производительности. Опять же, рендеринг на стороне сервера был бы самым первым делом.