Время загрузки сайта - Linux (pingdom, googlePageSpeed)

У меня есть 60 веб-сайтов на веб-сервере Linux (nginx), и мне нравится следить за тем, сколько времени требуется каждому веб-сайту для полной загрузки. Что-то вроде tools.pingdom.com, где я помещаю URL и локаль и возвращаю время полной загрузки страницы. Но мне нужно это через терминал Linux, чтобы автоматизировать эту задачу для всех сайтов и для новых будущих сайтов. Кто-то знает какой-либо API или инструмент через Linux, чтобы сделать эту работу? Я пробовал wget и curl, но результаты нестабильны, wget я использовал:

(time wget -p --no-cache --delete-after example.com -q ) 2>&1 | awk '/real/ {print $2}'

Но я не могу установить локаль, и в большинстве случаев результаты нестабильны, при этом одни и те же веб-сайты дают 2 секунды для загрузки и 10 секунд несколько минут назад.

Спасибо!

1 ответ

Если производительность вашего сервера нестабильна, то результаты также нестабильны, но это правильно.

curl а также wget являются жизнеспособными вариантами для измерения времени, которое требуется для запроса. Вероятно, вы можете установить языковой стандарт, установив в заголовке "Accept-Language" значение желаемого языка (с помощью wget --header а также curl --header). Также стоит отметить, curl имеет -w флаг, который отображает информацию на стандартный вывод после завершения передачи, вы можете указать в формате -w переменные времени (например, curl -w "First Byte: {time_starttransfer}, Total:{time_total}").

Вы также можете взглянуть на инструмент webpagestest. Есть хост-версия с API, и вы можете скачать работающую версию. Это cli, web и api, и он поддерживает свой внутренний язык сценариев, который позволяет переопределять заголовки. Веб-тестирование полностью отличается от curl и wget, потому что он загружает всю веб-страницу (со всеми ее активами, такими как css, js, images ...) и измеряет общее время, которое пользователь испытывает при просмотре веб-сайта с реальным браузер. Под капотом webpagetest работают настоящие веб-браузеры.

Другие вопросы по тегам