Для ознакомления со списком лекций, перейдите по ссылке.
Спроектировать и отобразить графически основные компоненты системы, их взаимодействие и место в общей структуре.
Для веб-приложений, таких как интернет-магазин, наиболее распространена трехуровневая (трехзвенная) архитектура. Она обеспечивает модульность, масштабируемость и безопасность.
Создаем несколько взаимосвязанных моделей:
Показать взаимодействие системы с внешними системами и субъектами:
Основные программные модули и связи между ними:
Реальные компоненты системы на серверах:
flowchart TD
subgraph Internet [Интернет]
direction LR
A1[Пользователи]
A2[Администраторы]
end
subgraph DMZ [Демилитаризованная зона]
B1[Балансировщик нагрузки]
end
subgraph InternalNetwork [Внутренняя сеть]
subgraph WebTier [Веб-уровень]
C1[Веб-сервер 1]
C2[Веб-сервер 2]
end
subgraph AppTier [Уровень приложений]
D1[Сервер приложений 1]
D2[Сервер приложений 2]
end
subgraph DataTier [Уровень данных]
E1[Кластер БД]
E2[Сервер кеша]
end
end
A1 --> B1
A2 --> B1
B1 --> C1
B1 --> C2
C1 --> D1
C2 --> D2
D1 --> E1
D2 --> E2
Структура базы данных — основные сущности и связи:
erDiagram
USERS {
int id PK
string email
string password_hash
string name
}
PRODUCTS {
int id PK
string name
text description
decimal price
int category_id FK
}
CATEGORIES {
int id PK
string name
}
ORDERS {
int id PK
int user_id FK
datetime order_date
string status
decimal total_amount
}
ORDER_ITEMS {
int id PK
int order_id FK
int product_id FK
int quantity
decimal price
}
USERS ||--o{ ORDERS : "places"
CATEGORIES ||--o{ PRODUCTS : "contains"
ORDERS ||--o{ ORDER_ITEMS : "includes"
PRODUCTS }o--o{ ORDER_ITEMS : "in"
Эта работа показывает ваше понимание, как реализовать архитектуру на практике.