Skip to main content

Архитектура ИС (Клиент-Сервер, Трехзвенная) с точки зрения подключения к СУБД.

Архитектура Клиент-Сервер (2-звенная)

Клиент напрямую обращается к СУБД, формирует SQL и получает данные. Может быть толстый или тонкий клиент. 

Толстый и тонкий клиент
Тип клиента Характер Где логика Обработка запросов к СУБД
Толстый клиент Fat Client Бизнес-логика + UI на клиенте Клиент формирует SQL и напрямую обращается к СУБД
Тонкий клиент Thin Client Логика минимальна Клиент формирует простые SQL-запросы и напрямую обращается к СУБД
Схемы
Толстый клиент (2-звенная)
Пользователь → (логика, запросы SQL) Клиент 
           → (SQL) → Сервер СУБД
                     ← результаты
Тонкий клиент (2-звенная)
Пользователь → UI-только клиент
           → минимальная логика на клиенте
           → SQL → Сервер СУБД
                     ← результат
Общая логика
[ Клиент ]
     |
  SQL запрос
     |
[ Сервер СУБД ]

Трёхзвенная архитектура (3-tier)

Это расширение клиент-серверной модели. Вводится промежуточный уровень приложения (API), который обрабатывает бизнес-логику и взаимодействует с СУБД вместо клиента. Клиент общается только с API.

Схема (3 уровня)
[ Клиент (UI) ]
     |
   API/HTTP
     |
[ Сервер приложений ]
     |
 JDBC/ODBC/ORM
     |
[ Сервер СУБД ]
Уровень Что делает К СУБД подключается?
Клиент Интерфейс пользователя Нет прямого доступа
Сервер приложений / API Бизнес-логика и обработка данных Да
Сервер СУБД Хранит данные и отвечает на запросы

Клиент никогда не общается напрямую с СУБД — только через API сервера приложений. 

Преимущества:

  • Лучшая безопасность
  • Обновления логики на сервере без изменения клиентов
  • Меньшая нагрузка на сеть
  • Масштабируемость
  • Разделение ответственности

Сравнение архитектур

Характеристика 2-звенная 3-звенная
Кол-во уровней 2 3
К клиенту можно подключиться к БД? Да Нет
Бизнес-логика На клиенте На сервере приложений
Обновление UI Труднее Легче
Масштабируемость Ниже Выше
Безопасность доступа к данным Ниже Выше
СУБД-API Прямой Через сервер приложений