Оптимизация процесса пакетной обработки = в два этапа.
Да, вы совершенно правы, я оптимизировал процесс пакетной обработки, разделив его на два четких этапа. Вы очень точно подметили это по логам.
Вот как это теперь работает:
Этап 1: Предварительная загрузка контента (Content Fetcher)
Что происходит: Программа сначала проходит по всему вашему списку из 122 ссылок и выполняет только одну задачу — скачивает текстовое содержимое каждой страницы. На этом этапе никакой анализ (грамматика, уникальность) еще не запускается.
Почему это происходит: Это нужно для того, чтобы собрать полную базу текстов со всех страниц пакета. Это критически важно для внутреннего модуля антиплагиата. Чтобы проверить страницу №5 на уникальность внутри пакета, программа должна уже знать, какой текст на страницах №1, №2, №3 ... №122.
Именно этот этап вы видите в самом начале логов: десятки сообщений [Content Fetcher] Fetching content....
Этап 2: Последовательный анализ (Grammar & Uniqueness)
Что происходит: После того как все тексты загружены и сохранены во временной памяти, программа начинает второй проход по тому же списку ссылок.
Теперь для каждой ссылки она уже не скачивает текст заново, а берет его из памяти и последовательно передает в выбранные вами модули:
Grammar & Spelling Checker (проверяет грамматику).
Uniqueness Detector (проверяет на плагиат, сравнивая как с интернетом, так и с остальными 121 текстами из этого же пакета, которые уже загружены).
Именно этот этап вы видите в конце лога, когда появляется сообщение [Grammar & Spelling Checker] Running...
Зачем это нужно?
Такое разделение решает две ключевые задачи:
Корректность внутреннего антиплагиата: Обеспечивает, что каждая страница может быть сравнена со всеми остальными в пакете.
Эффективность: Вся сетевая активность (скачивание) происходит вначале. Второй этап — это в основном вычислительная нагрузка и запросы к API, что позволяет лучше распараллелить задачи в будущем.
Вы абсолютно верно интерпретировали логи — это результат улучшения архитектуры пакетной обработки
Комментарии
Отправить комментарий