Всем привет. Делаю для себя сервис.
Первый раз при добавлении сайта собираю по нему такие данные: title, description, скорость загрузки страницы и т.д. сохраняя все в BD.
Скорость получаю с помощью этих ссылок
https://www.googleapis.com/pagespeedonline/v2/runPagespeed?strategy=desktop&url=site.com
https://www.googleapis.com/pagespeedonline/v2/runPagespeed?strategy=mobile&url=site.com
title, description и всю остальную инфу собираю с помощью phpQuery.
Это был первый скан при добавлении сайта, дальше я каждый день (кроном) сканирую по той же схеме и сравниваю с показателями из базы, если есть изменения то я записываю в таблицу изменений и делаю update вчерашнего скана, придумал так для того чтобы отслеживать изменения в сайтмапе каждый день и чтобы при этом каждый день в базу не писало данные по новому дню, делая базу все больше и больше, а только фиксировать изменения по сравнению со вчерашним днем.
Все работает отлично!, но делал я это все до сегодняшнего дня только на сайтах с sitemap не больше 1000 урлов, сейчас нужно делать тоже с сайтами в которых в сайтмапе находиться >100 000 ссылок, и вот я думаю если скан одного сайта в которого ~1000 занимает довольно продолжительное время (точно не замерял), так вот если у меня есть 5 сайтов с sitemap 100 000 и 5 с 1000, то для того чтобы их просканить нужно очень много времени (дня мало будет))).
Вопрос 1: Кто подскажет как лучше делать сканирование больших сайтов?, раз в три дня или раз в неделю, может у кого-то есть другие идеи, и как работа такого скрипта повлияет на сервер?, если я запущу такой скрипт на сканирование >500 000 ссылок то будет большая нагрузка на сервер и хз как это повлияет на сайтах которые лежат на нём.
Вопрос 2: Как ещё можно получить скорость загрузки стр.? т.к. большая часть сканирования ссылки уходит на Pagespeed
https://www.googleapis.com/pagespeedonline/v2/runPagespeed?strategy=desktop&url=site.com
https://www.googleapis.com/pagespeedonline/v2/runPagespeed?strategy=mobile&url=site.com
он очень долго отдает результат.
И прошу совета по общей схеме, так делать нормально или если лучшие варианты. Буду рад услышать всех!)