OvvaClean — Описание технической архитектуры ПО
ДАТА: 01.08.2025
ВЕРСИЯ: 1.2
ПОДГОТОВЛЕНО: Константин Степанов
ПРОВЕРЕНО: Константин Степанов
1. Назначение системы
Программное обеспечение «OvvaClean» предназначено для автоматизации деятельности химчисток и прачечных.
Основные задачи системы:
- учёт и обработка заказов на чистку вещей,
- фотофиксация и штрих-кодирование,
- управление производственными процессами (приём → обработка → выдача),
- взаимодействие с клиентами (уведомления, скидки, сертификаты),
- финансовый учёт (оплаты, задолженности, формирование счетов).
2. Архитектура системы
ПО «OvvaClean» построено по трёхзвенной архитектуре с использованием тонкого веб-клиента.
Уровни системы:
- Клиентская часть (web-клиент) – пользовательский интерфейс (приёмщики, мастера, администраторы, владельцы). Доступ через любой современный браузер.
- Сервер приложений – реализует бизнес-логику системы: приём заказов, фотофиксацию, работу с БД, уведомления.
- Сервер баз данных – централизованное хранение информации о клиентах, заказах, вещах, оплатах.
Особенности:
- SaaS-модель (по умолчанию) с возможностью on-premise установки,
- REST API для интеграции (например, с мессенджерами через Wazzup, банковским эквайрингом),
- защита данных (шифрование, разграничение прав доступа, хранение в РФ).
3. Технологический стек
- Серверная часть: PHP 8.1 (Laravel 10), Node.js (Nuxt.js 2, SSR), Nginx + PHP-FPM
- Клиентская часть: JavaScript (ES6+), HTML5, CSS3, Vue.js (Vuetify, компоненты)
- Базы данных: PostgreSQL 13+ / MySQL (MariaDB 10.5+)
- Интеграции: Telegram Bot API, платёжные шлюзы, модули экспорта (Excel/PDF), сервисы уведомлений
- Системы управления зависимостями: Composer (PHP), npm (Node.js)
- ОС сервера: Linux (Ubuntu 20.04 LTS и выше)
- Контейнеризация и CI/CD: не используется (деплой осуществляется вручную/через SSH на серверы)
4. Технические требования
Сервер:
- CPU: от 4 ядер (рекомендуется 8 vCPU для production)
- RAM: от 4 ГБ (рекомендуется 16 ГБ)
- HDD/SSD: от 80 ГБ SSD (рекомендуется ≥200 ГБ SSD + отдельный том для бэкапов)
- ОС: Linux Ubuntu 20.04 LTS и выше (возможна Windows Server при необходимости)
Клиентские машины:
- CPU: от 2 ядер
- RAM: от 2 ГБ
- ОС: Windows 7 и выше / Linux / macOS
- Браузеры: Google Chrome, Yandex Browser, Mozilla Firefox, Edge, Safari (актуальные версии)
- Разрешение экрана: не ниже 1280×960
Каналы связи:
- Сеть: от 10 Мбит/с
- Протоколы: HTTPS (внешний доступ), SSH (администрирование)
5. Масштабируемость и производительность
- Система поддерживает работу сотен пользователей в рамках одной инсталляции; нагрузочное тестирование на объёме БД до сотен гигабайт.
- Возможна горизонтальная масштабируемость: разделение серверов приложений и СУБД, вынос очередей/кэша на отдельные сервисы (Redis, RabbitMQ).
- Предусмотрено резервное копирование данных и восстановление в случае сбоя.