Торговая площадка


Команда Intelexity разработала торговую платформу от концепции до выхода на рынок. Торговая площадка — это онлайн-платформа, где множество продавцов предлагают свои товары или услуги, а покупатели могут искать, сравнивать и выбирать наиболее подходящие предложения.

Наша команда инженеров изначально сосредоточилась на создании прочной основы для работы с большим потоком покупателей и продавцов. Сегодня реализованная нами торговая площадка предлагает более 3 миллионов товаров от более чем 6000 продавцов, и ежедневно ее посещают более 200 000 уникальных пользователей.

Подробнее о некоторых реализованных функциях:


Для команды клиента:

  • Платформа с функциями для размещения заказов, оплаты и доставки товаров.
  • Четкий и гибкий интерфейс.
  • Возможность отслеживать действия поставщиков и покупателей в режиме реального времени.
  • Аналитика и контроль логистики товаров.
  • Возможности интеграции рекламы, продвижения и сбора статистики.
  • Проверка всех пользователей платформы на соответствие требованиям и надежность.

Для поставщиков:

  • Модуль для отслеживания запасов, продаж и статистики.
  • Возможности продвижения и рекламы.
  • Полная система отслеживания товаров от поступления на склад до конечного пользователя.
  • Бухгалтерский модуль, переводы и снятие средств.

Для покупателей:

  • Система доступа ко всем товарам независимо от геолокации.
  • Личный кабинет с архивом покупок, статистикой и бонусной системой.
  • Возможность отслеживать покупки, организовывать возврат или обмен.
  • Платежные модули наличными, кредитными средствами, рассрочкой.

Разработка:

В рамках проекта Marketplace наша команда инженеров разработала архитектуру, полностью отвечающую требованиям высокой нагрузки и высокой доступности. Для обеспечения бизнес-операций мы использовали более 20 микросервисов, связанных между собой очередью сообщений RabbitMQ. Это сделало сложные и трудоемкие вычисления практически незаметными для конечного пользователя. За хранение данных в сервисах отвечали различные базы данных, включая классический SQL PostgreSQL, а также более специализированные NoSQL (Cassandra), KeyValue (HazleCast) и другие.

Команда разработчиков реализовала:

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

А:

Наша команда QA-инженеров обеспечила высокое качество продукта. Было описано более 5000 случаев. С помощью Jmeter проводилось как функциональное, так и нефункциональное нагрузочное тестирование. Также был создан фреймворк для автоматизированного тестирования, который был запущен на этапе сборки. В своей работе мы использовали TestRail, RestAssured, Selenoid.

DevOps:

В рамках проекта Marketplace мы создали полный процесс CI/CD для быстрой доставки изменений более 20 микросервисов в рабочую среду. Для создания CI/CD для такой сложной системы мы использовали Gitlab CI, Helm, Nexus, Chart Museum. Мы с нуля разработали конвейеры сборки системных компонентов со встроенными проверками качества написанного кода и проверками уязвимостей (SonarQube, Dependency Check).

В рамках проекта Marketplace наши инженеры DevOps создали отказоустойчивый аппаратный кластер из более чем 50 серверов SuperMicro, соединенных между собой Mikrotik, маршрутизаторами и коммутаторами Huawei. Для хранения большого объема данных использовались системы хранения данных Infortrend, Synology. Для наблюдения за кластером использовались различные системы мониторинга, включая Zabbix.

В рамках проекта Marketplace наши инженеры DevOps развернули кластер Kubernetes для управления микросервисной архитектурой. Интеграция между K8s и ProxMox была настроена для работы с базами данных и очередями RabbitMQ и Kafka. Кроме того, была создана система резервного копирования на основе технологий хранения резервных копий Synology.

Для распределенной системы инженеры DevOps нашей команды построили систему мониторинга на основе стека ELK для мониторинга бизнес-ошибок; Zabbix для аппаратной части кластера, а также Grafana и Prometheus для мониторинга и оповещения о сбоях в кластере k8s.

Наша команда настроила систему анализа бизнес-данных (BI). Система анализа была основана на стеке Hadoop, Hive, Spark, Apache Druid и Kafka.