1.2. Основы архитектуры#
1.2. Основы архитектуры #
Перед изучением данного раздела, следует разобраться в основной архитектуре системы Tantor BE. Понимание того, как взаимодействуют части Tantor BE, сделает эту главу понятнее.
В терминологии баз данных Tantor BE используется модель «клиент-сервер». Сессия Tantor BE состоит из следующих взаимодействующих процессов (программ):
Серверный процесс, который управляет файлами базы данных, принимает подключения к базе данных от клиентских приложений и выполняет действия с базой данных от имени клиентов. Программа сервера базы данных называется
postgres
.Клиентское приложение пользователя (фронтенд), которое собирается выполнять операции с базой данных. Клиентские приложения могут быть очень разнообразными по своей природе: клиентом может быть инструмент с текстовым интерфейсом, графическое приложение, веб-сервер, который обращается к базе данных для отображения веб-страниц, или специализированный инструмент для обслуживания базы данных. Некоторые клиентские приложения поставляются с дистрибутивом Tantor BE; большинство разрабатываются пользователями.
Как и в типичных клиент-серверных приложениях, клиент и сервер могут находиться на разных хостах. В этом случае они обмениваются данными по сетевому соединению TCP/IP. Следует иметь это в виду, поскольку файлы, к которым можно получить доступ на клиентской машине, могут быть недоступны (или могут быть доступны только с использованием другого имени файла) на сервере базы данных.
Сервер Tantor BE может обрабатывать одновременно
несколько подключений от клиентов. Для этого
он запускает (“разветвляет”) новый процесс для каждого подключения.
С этого момента клиент и новый серверный процесс
общаются не затрагивая процесс postgres
. Таким образом,
серверный процесс-наблюдатель всегда работает, ожидая
подключений клиентов, в то время как клиент и связанные с ним серверные процессы
появляются и исчезают. (Все это, конечно же, невидимо для пользователя.
Мы упоминаем это здесь только для полноты информации).