Я потратил много времени на оптимизацию своего CSS, удаление плагинов, перенаправлений и всего остального, что можно сделать для улучшения времени загрузки, но, по-видимому, основные виновники следующие:
mobile_4-randomcharacters-.css, который содержит normalize.css и Pikaday и загружается за 1,5 секунды на мобильных устройствах,
и /assets/ember_jquery-randomcharacter-.js, который загружается за 3,6 секунды на мобильных устройствах.
Я не имею представления, что делать с этими файлами, которые имеют самое высокое время загрузки.
Загрузка на компьютере быстрее, но всё ещё не идеальна.
Сервер работает на 1 CPU, 2 ГБ ОЗУ, 50 ГБ SSD, 2 ТБ трафика на профессиональном сервере в США.
2 воркера unicorn, ни процессор, ни оперативная память не испытывают высокой нагрузки, и у меня немного пользователей или плагинов.
Есть какие-то идеи? Спасибо.
Спасибо. На странице https://developers.google.com/speed/pagespeed/insights/ указано, что время работы CPU (не время доставки) конкретно для второго ресурса составило почти 4 секунды. Поможет ли в этом случае CDN, например Fastly? Сейчас я использую Cloudflare с кэшированием. Нужно ли мне настроить что-то в Cloudflare или просто добавить поверх что-то вроде Fastly?
Это действительно значительное преимущество, которое потребует времени для разбора и оценки. Поскольку Discourse является «одностраничным приложением» (Single Page Application), эти затраты оплачиваются полностью при первом посещении пользователя, и это компромисс нашего подхода, который направлен на то, чтобы все последующие взаимодействия, типичные для использования форума, были легковесными.
Планируется, что в EmberJS станет необязательным использование JQuery, что значительно уменьшит размер полезной нагрузки, но до перехода на эту технологию в Discourse ещё несколько лет.
Что ж, настройки по умолчанию для Pagespeed принудительно используют Nexus 5X и соединение 3G, что даже для Бразилии (развивающейся страны) является низким показателем по современным стандартам, поэтому реальная производительность будет зависеть от этого.
В статистике производительности сервера практически отсутствует нагрузка, однако URL загружается очень долго. Для незарегистрированного посетителя в режиме инкогнито время загрузки составило 1,2 минуты, даже когда многие компоненты уже были в кэше. Самыми медленными оказались файлы шрифтов OpenSans (ttf) — более минуты; после них несколько JS-компонентов загружались от 30 до 45 секунд.
Я изучу варианты кэширования, но, судя по этим компонентам, не все из них можно закэшировать. Общий объём переданных данных — всего 730 КБ. Если бы все 3 vCPU работали на полную мощность, я бы подумал о переходе на более быстрый сервер, но поскольку даже они показывают почти нулевую нагрузку, я просто в замешательстве.
Возможно, что-то ожидает завершения другого процесса перед продолжением? Есть ли способ запустить тесты на самом сервере для проверки работоспособности компонентов, например базы данных?