Top.Mail.Ru
РБК Компании

Клиенты уходят до кассы: как за 2 недели спасти продажи интернет-магазина

В этой статье расскажем, как одна технология позволила интернет-магазину избежать потерь и не потерять ни одного заказа
Онлайн-продажи
Источник изображения: Freepik.com
Задача и причина

Задача: рефакторинг устаревшего микросервиса доставки для онлайн-магазина.

Причина: оформление доставки занимало больше 30 секунд, из-за чего четверть покупателей покидали корзину, не завершив заказ.

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

В компанию обратился крупный интернет-магазин одежды с проблемой: оформление доставки тормозило более чем на 30 секунд: 25% клиентов бросали корзины на этом этапе. Сбои микросервиса приводили к полной потере заказов. Продажи падали, покупатели уходили к конкурентам. На решение этой проблемы было всего 2 недели. 

Собрали команду из двух специалистов и взялись за рефакторинг устаревшего микросервиса доставки.

  • Рефакторинг — это когда в системе разработчик приводит код в порядок, не меняя его логику: убирает технические недочеты, ускоряет добавление новых функций и упрощает масштабирование. В итоге бизнес-клиент получает современный сервис без затрат на полную разработку с нуля.

Как починить код и архитектуру

Для начала изучили систему изнутри, искали настоящую причину ее сбоя.

Клиенты уходят до кассы: как за 2 недели спасти продажи интернет-магазина

Диагноз и решение

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

Техническая задача: стабилизировать асинхронные вызовы. 

Бизнес-задача состояла в следующем: сократить издержки, увеличить долю посетителей сайта, которые действительно покупают (оформляют заказ), а не просто смотрят товары и уходят.  

Команда увеличила продажи вдвое. Если раньше из 100 человек, зашедших в магазин, до этапа оформления доставки доходило 10 покупателей (конверсия 10%), то после исправлений конверсия выросла  до 20%: из тех же 100 человек 20 человек спокойно оформляют и оплачивают заказ. Больше продаж без лишней рекламы.

Решение: технология TaskCompletionSource + кэш

Команда внедрила TaskCompletionSource — это умный «диспетчер ожидания», технология, которая позволяет управлять пользовательским обращением, когда система зависает. Он ждет реального сигнала завершения, прежде чем отметить задачу выполненной. Идеально подходит для микросервисов, зависящих от внешних систем.

Решение команды работало в такой логике: TCS + кэш (хранилище уже готовых вычислений) = завершенная операция. 

Что учитывали:

  • список пунктов выдачи товара и их время работы для конкретного города редко меняется в течение дня — эту информацию можно кэшировать надолго.
  • свободные ячейки терминалов меняются чаще (появляются и освобождаются каждую минуту), в этом случае обновлять данные нужно каждую минуту; если клиент успешно оформил заказ с выбором конкретного терминала — система сразу обнуляет информацию по всему городу, чтобы другие покупатели не видели уже занятую ячейку как свободную.

Проблема, с которой столкнулись: приходилось работать со сторонними сервисами под чужим контролем, которые отвечали нестабильно. Кэшировать приходилось большую часть данных, чтобы система загружалась быстро.

Как работает связка TCS + кэш.

  1. Первый запрос запрашивает маршрут доставки данных у внешнего сервиса.
  2. TCS держит остальных в ожидании: «Подождите, уже считается!»
  3. Результат попадает в кэш — следующие 999 клиентов получают его мгновенно.
  4. Никаких дублей, перезаписей или «попробуйте еще раз».

Обычный подход при таком технологическом вызове — переписать сервис заново. Но команда выбрала точечный апгрейд: TCS как мост между реактивными событиями и логикой + паттерн Saga для надежных распределенных транзакций.

  • Saga Pattern — это способ управлять сложными операциями в микросервисах, разбивая их на последовательность мелких, независимых шагов. 

Например: заказ оплата доставка. Если доставка провалилась — возвращаем деньги и отменяем заказ.

Результаты работы 

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

На тестировании сервис показал отличную работу. Нагрузочные тесты — 800+ заказов в минуту (получение информации о доставке: показатели на два порядка выше; но доставка — это еще не заказ, поэтому оперировали этой метрикой), центральный процессор ускорился на 5%. В продакшене команда предусмотрела сценарии, при которых система будет работать стабильно даже при пиковых нагрузках.

Метрики «после» (официальные показатели):

Клиенты уходят до кассы: как за 2 недели спасти продажи интернет-магазина

Выгоды бизнеса

Пользователи теперь оформляют заказы за секунды без ошибок: добавили одежду в корзину выбрали доставку оплатили. Конверсия взлетела — из 100 посетителей покупать стали гораздо больше людей.

Чем полезно решение TCS + кэш + Saga

  • Исключены потери данных (никто не теряет заказы)
  • Никаких некорректных отчетов (бухгалтерия видит правду)
  • Лишние вычисления убраны — серверы «дышат» (можно выбрать тариф подешевле для хостинга)

Теперь система заказчика выдерживает любую нагрузку (от 50 до 5000 заказов/час), масштабируется без боли, а разработчики добавляют новые функции в 3 раза быстрее. 

Выводы от команды разработчиков

После завершения проекта команда провела разбор стеков разработки. Это позволило не потерять опыт: зафиксировали 5 ключевых решений и составили дорожную карту кейса. В будущем такой разбор поможет избежать ошибок в похожем проекте и масштабировать удачные практики.

Главные выводы: TaskCompletionSource дает точный контроль над ожиданием внешних API, а в связке с умным кэшем убирает 90% лишних запросов. Saga Pattern автоматически откатывает сбои в цепочке сервисов (спасает 90% проблем). Цифры (задержка, пропускная способность, конверсия) важнее кода — именно их видит бизнес. Маленькая команда из двух экспертов за две недели сделала то, на что ушли бы месяцы у десяти человек. Эти решения уже внедряются в три новых проекта, а второй клиент ждет аналогичного рефакторинга.

Результат

Ключевые цифры для бизнеса

  • Продажи за месяц: +340% (было х заказов, стало 4.4X)
  • Отмены по доставке: 0% (было 18%)
  • ROI проекта (возврат инвестиций): 1200% за 3 месяца 

Источники изображений:

Freepik.com

Рекомендации партнеров:

Новости отрасли:

Все новости:

Публикация компании

Достижения

1 местоВ рейтинге аутстаф-разработчиков (Tagline, 2025)
1 местоВ рейтинге аутстаффинга (Рейтинг Рунета, 2025)
1 местоВ разработке и интеграции ИИ-решений (Рейтинг Рунета, 2025)
2 местоВ разработке для управления логистикой (Управление производством, 2025)
4 местоВ рейтинге мобильных разработчиков (Tagline, 2025)

Профиль

Дата регистрации
19 августа 2025
Уставной капитал
30 000 ₽
Юридический адрес
обл. Ульяновская, г. Ульяновск, пр-кт Нариманова, д. 1, стр. 2
ОГРН
1257300005929
ИНН
7300044805
КПП
730001001
ГлавноеЭкспертыДобавить
новость
КейсыМероприятия