Платформа
Платформа — модуль Docsvision, являющийся основой Системы:
-
Предоставляет сервер приложений Docsvision.
-
Предоставляет среду функционирования других модулей.
-
Предоставляет компоненты базового API, необходимые для работы с сервером Docsvision.
-
Предоставляет системные типы карточек, которые добавляют сущности: папки, поисковые запросы, нумераторы, пользовательские настройки и др. см. описание библиотеки карточек "Системные карточки".
-
Реализует функции хранения и доступа к данным системы Docsvision, дискреционной и мандатной моделей безопасности, полнотекстового индексирования и др.
У модуля Платформа отсутствуют зависимости от других модулей Docsvision — другие модули являются зависимыми от модуля Платформа.
Архитектура модуля представлена на следующей схеме.
-
Веб-сервис, функционирующий в среде выполнения ASP.NET 6.0.
Предоставляет доступ к серверу по протоколу HTTP/SOAP.
-
Сервер Docsvision — реализует прикладные сервисы доступа к данным, разграничение прав доступа, управление пользовательскими сессиями, их контекстом и прочее. Всё взаимодействие клиентских компонентов системы и внешних приложений осуществляется через сервер приложения, который является основным инструментом контроля за доступом к данным.
-
Сервис полнотекстового индексирования — передаёт данные карточек/файлов, для которых включено индексирование во внешнюю индексирующую систему — Elasticsearch или SQL Server. Данный сервис обеспечивает работу полнотекстового поиска Docsvision.
-
Файловый сервис — реализует функции отложенного удаления и перемещения данных между хранилищами бинарных данных файлов. Этапы работы Файлового сервиса рассмотрены в разделе Хранение бинарных данных файлов.
-
Ядро сервера — обеспечивает среду выполнения других элементов.
-
Слой работы с данными — интерфейс доступа к базам данных Docsvision. Обеспечивает доступ к основной и сателлитным БД, а также репликам БД, если БД в режиме Microsoft SQL AlwaysOn.
-
Слой кэширования — интерфейс доступа к серверному кэшу, который может размещаться в оперативной памяти процесса сервера или во внешнем хранилище (например, сетевом хранилище Redis).
-
Провайдеры к внешним хранилищам — обеспечивает доступ к хранилищам с бинарными данными файлов, которые могут размещаться в базе данных, файловой системе или другом типе хранилища.
-
Провайдер полнотекстового поиска — обеспечивает доступ к системе полнотекстового индексирования Microsoft SQL Server и Elasticsearch.