Обратный звонок
главнаякейсыВысоконагруженный агрегатор поиска электронных компонентов

Высоконагруженный агрегатор поиска электронных компонентов

DevopsФронтенд
Основная цель сервиса — предоставлять актуальную информацию о компонентах, включая номера, описания, изображения и информацию от дистрибьютора — доступное количество на складе, упаковки и цена.

каков бизнес заказчика?

У сервиса есть 3 источника дохода

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

Дистрибьюторы также делятся своим API. Благодаря интеграции, сервис отображает в режиме реального времени информацию о доступных количествах и ценах. Интеграция с API — второй способ заработка.

Сервис — ценный источник клиентов для дистрибьюторов. Он не продает детали напрямую, а перенаправляет пользователей на сайт дистрибьютора. В результате, дистрибьюторы размещают объявления на сайте сервиса. Это еще один способ заработка.

Для поддержания эффективной работы агрегатор нуждался в усовершенствованиях и доработках:

Обработка файлов инвентаря, интеграция ETL (это общий термин для процессов, которые происходят, когда данные переносят из нескольких систем в одно хранилище. Аббревиатура расшифровывается как Extract, Transform, Load, или «извлечение, преобразование, загрузка») и API дистрибьютора.

Агрегатор увеличивает аудиторию, внедряя функции вовлечения пользователей и улучшения SEO.

что мы сделали

ETL

SmartUp построил процесс ETL, сервис получения данных через API дистрибьюторов и публичных сайтов.

ETL декомпозирует данные о компонентах и дистрибьюторах и помещает их в поисковую систему. Это позволяет обрабатывать запросы на сайт с помощью поисковой системы.

ETL написан на SQL Server Job, который содержит 46 шагов. Задание отвечает задекомпозицию данных и размещение данных в отдельной таблице. После того, как задание завершено, он запускает другое специальное программное обеспечение для переноса данных из SQL Server в поисковую систему.

PDAA

На сервисе есть дистрибьюторы, для которых актуальная информация о запасах и ценах должна отображаться в реальном времени.

Для этого был разработан сервис PDAA. Служба PDAA обрабатывает запросы данных о компонентах на веб-сайте и получает информацию от всех подключенных дистрибьюторов. Запросы укладываются в 2 секунды.

Публичный веб-сайт

Публичный сайт берет данные из поисковой системы, SQL-сервера и PDAA и отображает их конечным пользователям. На веб-сайте есть множество бизнес-правил для управления и сортировки данных дистрибьюторов и рекламы. Кроме того, реализовали функции для повышения вовлеченности пользователей, такие как списки компонент, библиотека компонент и оповещения об инвентаризации.

Инфраструктура

SmartUp модернизировал инфраструктуру: осуществила переход на собственную инфраструктуру AWS, помог с улучшениями и оптимизациями хостинга.

Отчетность и показатели

SmartUp начал собирать бизнес-показатели, которые включают количество посещений, поисковых запросов, открытий сведений о компонентах и кликов по кнопке «Купить», чтобы клиент мог быстро увидеть эффект от новых функций и SEO-оптимизации.

Оптимизированные SmartUp отчеты Crystal Reports используются в проекте более 10 лет. Убраны неиспользуемые отчеты, добавлены новые востребованные.

Пользовательский интерфейс администратора

SmartUp постоянно работает над улучшением и очисткой панели администратора, которая написана с использованием устаревших технологий. Отказ от старого интерфейса администратора и замена его новым решением, написанным с использованием NodeJS, является одной из долгосрочных целей проекта. Хотя она имеет меньший приоритет, чем другие функции (например, переход на VueJS для оптимизации SEO), команда убирает неиспользуемые экраны.

Наш стек технологий

NodeJS
ExpressJS
Fastify
Java: Spring
Vite
Vue
Bootstrap sass
Webpack
Rollup
Windows Service
WebForms
MS SQL Server 2014
AWS OpenSearch
AWS ElastiсCache (Redis)
AWS SES
AWS

результат

Специалисты SmartUp привели данные системы к единым стандартам при помощи инструментов ETL, внедрили сервис обработки данных в реальном времени PDDA, перевели инфраструктуру в AWS и запустили сервис сбора бизнес-показателей. Кроме того, были разработаны публичный веб-сайт и пользовательский интерфейс администратора.

Крупная функциональность, добавленная в 2021 году

Клиенты могут получать данные о компонентах из 3DX и API дистрибьюторов. Конечные пользователи должны видеть все компоненты, если они есть у авторизованных дистрибьюторов.

Отчетность по трафику. Пользователи с правами администратора должны иметь возможность просматривать ежемесячные отчеты со статистикой кликов по кнопкам страниц. API-интеграция с дистрибьютором «Verical». Отображение данных «Verical» об акциях и ценах в режиме реального времени.

Исправлена загрузка данных продукта от производителей. Поправили случаи, когда мы не могли импортировать данные от производителей.

Мониторинг просмотров и времени загрузки страниц, оповещение о низких и высоких лимитах трафика.

Перенесли главную страницу на современный стек технологий для улучшения результатов SEO.

Задачи выполнены — цель достигнута

Мигрировали с оборудования Informa на AWS.

Оптимизировали работу ETL так, что теперь весь процесс занимает около 3 часов, а не 6-8 часов, как 5 лет назад. Классный результат, если учесть, что количество компонент было увеличено с 18 до 50 миллионов.

Сократили затраты на хостинг. SmartUp добился этого, изменив типы инстансов EC2, используя spot инстансы для автоматического масштабирования и зарезервированные инстансы для самых дорогих сервисов SQL Server и AWS OpenSearch (ежемесячный счет около 10 000 долларов США в 2021 году из первоначальных 25 000 долларов США в 2019 году).

Сделали всю систему более стабильной, регулярно проводя сквозные тесты, тесты ETL. Восстановили тесты производительности. Добавили отчеты Lighthouse в CI

Добавили данные о дистрибьюторах в режиме реального времени на сайт путем интеграции с их API. Для этого на языке java был реализован специальный сервис PDAA.

Реализовали новую домашнюю страницу на современном технологическом стеке

FE (vuejs 3), включая подход к рендерингу на стороне сервера со многими улучшениями UX. Работаем над миграцией страниц результатов поиска и сведений о деталях в новый стек технологий.

Отправь заявку

подписаться на нашу рассылку

Сообщение отправлено
заполнить еще раз

позвоните мне