description.md 4.1 KB

Общее описание

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

Cостоит из:

  • Двух PWA‑приложений
    • Интернет магазин (Клиентское)
    • Админка
  • Бэкенда, реализованного как набор специализированных микросервисов, доступных через единую точку входа PlatformAPI (ProfiMall.ServerAPI).
  • Мастер‑системы по товарному каталогу, ценам, остаткам и ряду оперативных данных, которой выступает 1С‑сервер.
  • Балансировочный сервер (nginx)

    [PlatformAPI_0](МС_0, М_1, ...) + [PlatformAPI_N](МС_N+1, М_N+2, ...)
    _____________________________________________________________________
                                 ^
                                 v
                     [1C] <-> [nginx] <-> [Внешние сервисы]
                                 ^
                                / \
                               v   v
                     [Shop PWA] [Admin PWA]
    

Основные составляющие

Фронтенд

  • Клиентское приложение (Shop PWA) — интернет-магазин для покупателей. Поддерживает каталог, поиск, карточку товара, корзину, оформление заказа, личный кабинет, отзывы и избранное.
  • Административное приложение (Admin PWA) — рабочий инструмент для сотрудников. Предоставляет функции настройки функционала и конфигураций, публикация статей и новостей, модерации отзывов и работы с обращениями клиентов.

Оба клиента реализованы как Progressive Web Application (PWA). Они взаимодействуют с системой только через Platform API, не обращаясь к микросервисам напрямую.

Подробнее

Бэкенд

Серверная часть выполнена в виде:

  • набора микросервисов;
  • агрегирующей платформы Platform API, объединяющей микросервисы внутри одного (или нескольких) программного домена, и предоставляющий доступ через HTTP API к интерфейсам сервисов;
  • статичного набора файлов PWA-приложений
  • балансировщика в виде nginx-сервера;

Подробнее

Мастер-система (1С)

1С является источником истины для товарного каталога, цен, остатков и статусов заказов. Она обменивается данными с платформой через специальный сервис-адаптер — Connector1CService, который преобразует данные из формата 1С в формат платформы и обратно. Таким образом достигается совместимость без жёсткой привязки архитектуры к особенностям 1С.

Балансировочный сервер

В роли балансировочного сервера используется nginx, через который идет все заимодействие между всеми частями системы.

Архитектура решения

Назад