Я давно придумал идею и никогда не удосужился ее реализовать, и мне хотелось бы знать, насколько это практично, так как это поможет значительно сократить время загрузки для современных браузеров. Он основан на том факте, что связанные задачи часто выполняются быстрее, когда они выполняются вместе в большом объеме, и что браузер может загружать контент на разные страницы, используя статистическую модель, вместо того, чтобы бездействовать, когда пользователь просматривает. Я вставил ниже выдержку из того, что я первоначально написал, которая описывает идею.
Описание.
Когда люди посещают сайты, я
предположение, что это вероятность
функция плотности P (q, t), где q представляет собой
действительное число, представляющее
Идентификатор сайта и т. Другой
действительное, неотрицательное целое число
представляя время суток, может
предсказать последовательность веб-страниц
посетил типичный человек
достаточно точно, чтобы оправдать
запрос и загрузка HTML
документы, которые пользователь собирается прочитать в
авансовый. Для данного сайта есть
документ, который представляется "основным
страница »сайта, через который
пользователи получают доступ к другим разделам
представлен корнем дерева
состав. Вероятность того, что
пользователь посетит корневой узел
Дерево может быть представлено двумя способами.
Если пользователь желает разрешить процесс
автоматически выполнять при
инициализация операционной системы
предварительно выбрать веб-страницы с веб-сайтов
(используя процесс, разработанный позже)
к которому пользователь часто обращается
при открытии веб-браузера
функция вероятности, которая определяет
будет ли данный сайт иметь свой
Предварительно извлеченные веб-страницы могут быть определены
используя самоадаптирующуюся эвристическую модель
на основе истории пользователя (или
ручной ввод). В противном случае, если нет такого
процесс желает пользователь,
значение P для корневого узла
не имеет значения, так как предварительная выборка
процесс используется только после того, как пользователь
посещение главной страницы сайта.
Дети на дереве, описанном ранее
каждый связан с человеком
функция вероятности P (q, t) (это
функция может быть справочной таблицей, которая
хранит пары время-веб-страница). Таким образом
последовательности веб-страниц, которые посещает пользователь
со временем регистрируются с помощью этого дерева
состав. Например, в 7:00 утра,
там может быть 71/80 шанс, что я
посетите раздел "WTF" на Reddit
после загрузки главной страницы этого
сайт. На основании значений
p> функция робастности P для каждого узла
в дереве, цепочки веб-страниц
простираясь на определенную глубину от
корневой узел, где чистая вероятность
что каждая последовательность соблюдается, P_c,
превышает определенный порог, P_min,
запрашиваются при посещении пользователя
главная страница сайта. Если
заканчивается загрузка одной веб-страницы
до того, как другой обработан,
пул потоков используется так, чтобы другой
ядро назначена задача разбора
следующая веб-страница в очереди
веб-страницы для анализа. Надеюсь, в
таким образом, большая часть тех
веб-страницы, которые пользователь может нажимать
отображается гораздо быстрее, чем они
было бы иначе.
Я упустил много деталей и оптимизаций, поскольку я просто хотел, чтобы это было кратким описанием того, о чем я думал. Большое спасибо, что нашли время, чтобы прочитать этот пост; не стесняйтесь задавать любые дополнительные вопросы, если они у вас есть.