Январские каникулы

Январские каникулы

Что происходило на январских каникулах? Была проведена работа над механизмами масштабирования и ускорения обхода сайтов, а также внесены небольшие исправления.

Это сократило общее время выполнения задач и повысило производительность системы при параллельном выполнении. Также был усовершенствован механизм очередей, что позволило эффективнее распределять нагрузку между компонентами системы.

Я поставил себе амбициозную цель — обходить сайты раз в месяц для проверки изменений в составе их аукциона. Это позволит своевременно отслеживать изменения в списке адаптеров, обеспечивая актуальность данных, а также сбора архива, для последующего анализа. Первые перепроверки были проведены в декабре — тогда же удалось отладить механизм запуска нескольких экземпляров сервисов и их взаимодействие друг с другом и с базой данных.

Кот в сапогах и золотой аукцион

В январе были улучшены механизмы обработки ошибок и восстановления после сбоев, что повысило устойчивость системы. Оптимизация использования памяти также помогла снизить общую нагрузку.

На данный момент сервис работает на локальном сервере. Такое решение обеспечивает быстрое тестирование изменений и постепенное наращивание мощностей. Я не планирую переносить его в облако в ближайшее время, так как это повлечёт неоправданные на данном этапе расходы.

Немного цифр: сейчас сервис обрабатывает более 3 тысяч сайтов в сутки (около 100 тысяч в месяц). Расходы на такой объём — 1 Тб трафика в месяц при среднем времени 45 секунд на сайт.

Глобальная цель — охват 8 миллионов сайтов, почти всего Рунета. Для этого планируется расширить возможности системы через увеличение вычислительных мощностей и внедрение более эффективных алгоритмов анализа. Первый рубеж — 200–250 тысяч сайтов в месяц.

Поскольку сервис находится на стадии MVP, я решил докупить оборудование для домашнего сервера, чтобы увеличить скорость работы. Новое оборудование не только повысит производительность, но и создаст задел для будущего роста. Дополнительный сервер позволит нарастить мощность.

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

Царство сервера

Итак, задачи на январь для HBTracker и LibTracker:

  • Продолжение оптимизации работы сервиса по двум направлениям:
    • Снижение расхода трафика
    • Увеличение производительности
  • Добавить в LibTracker схему масштабирования сервиса так же, как и у HBTracker
  • Добавить дашборды для LibTracker на PubMag
  • Создание ежемесячного отчёта по изменениям у адаптеров и библиотек в виде таблиц. Это сделает анализ более наглядным и поможет быстрее выявлять ключевые изменения в системе.

Эти задачи нацелены на улучшение как технической части проекта, так и пользовательского опыта. Особенно перспективным выглядит внедрение геймификации, которая сделает отслеживание изменений более наглядным и увлекательным.