Система АТ "Прозорро.Продажі" є розподіленою інформаційною системою, яка забезпечує проведення електронних аукціонів у форматі відкритих торгів.
Архітектура побудована за принципом мікросервісного підходу, що дозволяє забезпечити гнучкість, масштабованість і високу доступність.
Всі компоненти розгорнуті в хмарному середовищі (AWS)
Взаємодія між компонентами здійснюється через REST API
Забезпечується авторизація та аутентифікація через OAuth 2.0
Всі аукціонні процеси логуються для контролю прозорості та аналітики
Система складається з декількох рівнів:
Рівень | Компоненти | Опис |
---|---|---|
Користувацький рівень | Адмінка, Модуль аукціонів | Інтерфейс для користувачів аукціону (учасники, адміністратори, майданчики) |
Шлюз API | API Gateway | Єдина точка входу для клієнтів та зовнішніх систем |
Мікросервіси |
| Кожен сервіс відповідає за окремий функціонал |
База даних | MongoDB, Redis (кешування) | Зберігання всіх даних аукціонів, користувачів, ставок |
Система розгорнута у хмарному середовищі та використовує наступні технології:
Контейнери (Docker, Kubernetes) – для розгортання та управління сервісами.
Балансувальник навантаження (NGINX, AWS ALB) – рівномірний розподіл запитів.
Системи логування та моніторингу (Elasticsearch, Kibana, Prometheus, Grafana) – для відстеження роботи системи.
Автоматичне масштабування (Kubernetes HPA) – підвищення продуктивності під час пікових навантажень.
Приклад потоку запиту:
Користувач публікує обʼєкт Procedure
Запит надходить до API Gateway, який перенаправляє його до відповідного сервісу.
Якщо це участь в аукціоні, запит проходить через сервіс обробки ставок.
Дані кешуються у Redis для швидкого доступу.
Всі сервіси обмінюються даними через захищений API (REST).
Використовується шифрування трафіку через TLS 1.3.
Приклад взаємодії:
Користувач подає заявку на участь в аукціоні.
Дані перевіряються
Якщо все гаразд – користувач отримує доступ до аукціону.
Всі події логуються в централізовану систему моніторингу.
Час обробки запиту – не більше 500 мс.
Кількість одночасних користувачів – до 100 000.
Горизонтальне масштабування дозволяє автоматично додавати нові сервери.