> 🌅 Всем продуктивной недели!

Прошлая неделя выдалась жаркой — в хорошем смысле! Приятное напряжение извилин дало результат даже выше ожидаемого.

Напомню контекст: работаю над нагруженным легаси-проектом — выношу из монолита критические узлы в новое API, разгружая БД и UI. Делюсь свежими результатами.

Фокус недели: каталог и фильтры

Витрина — это сердце магазина. То, как она работает, — важный маркер для пользователя. А для разработчика — показатель мастерства.

Что было: При каждом действии посетителя (загрузка страницы, выбор фильтра) система «дёргала» базу данных. В пиковые моменты это замедляло не только сайт, а и внутренние инструменты менеджеров. Не спрашивайте почему была именно такая реализация - легаси всегда загадочные и полны неожиданностей.

Что сделано: Распутал сложный механизм запросов и внедрил решение, которое практически не нагружает БД.

Цифры говорят сами за себя

Каталог: - Было: 0.74 мс - Стало: 0.07 мс Ускорение: в 10,5 раз

Фильтр: - Было: 1.02 мс - Стало: 0.09 мс Ускорение: в 11,3 раза

Самое приятное — не просто цифры, а то, что снята «пиковая» нагрузка с сервера. Теперь активные пользователи не отнимают ресурсы у внутренней системы. Проще говоря: менеджеры перестанут ощущать тормоза в рабочих программах, когда на сайте много посетителей.

Подготовка к будущему

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

Бонус: умный поиск с синонимами

Расширил возможности модуля поиска, создав модель для синонимов. Теперь система понимает не только точные названия, но и альтернативные варианты.

Пример из жизни: Раньше при вводе «енри» не было результатов, а по «ерни» выдавалось всё что угодно, кроме производителя «Ernie Ball». Теперь синонимы помогают пользователю получать желаемое. Это напрямую влияет на конверсию — человек находит товар, а не пустую выдачу.

Что сделано: - Добавлены синонимы для производителей с транслитерацией (русский <—> латиница) в обе стороны - Скорость поиска при первом прогоне чуть ускорилась - При повторных обращениях — сократилась вдвое (с ~0.9 мс до ~0.43 мс) за счёт кеширования

Ускорять дальше без переделки UI нет смысла — основные тормоза сейчас в шаблонах фронта, а не в бэке.

Вот такая выдалась насыщенная неделя. Реализовал задуманное и продвинулся к следующим этапам - шаг за шагом иду к цели.

Занимайтесь проектами и рефакторингом! Это не просто показатель успешности дела, а и отличная зарядка для ума. (;

#AmbrionDev #legacy #api #optimization #refactoring #backend #performance

«А что у вас на этой неделе? Какие оптимизации или рефакторинги запланированы? Делитесь в комментариях! 👇»


🌅 Всем продуктивной недели!
 | Сетка — социальная сеть от hh.ru