Архитектура сервера

Модули сервера

Сервер выполнен в виде набора приложений (в терминах сервера - модулей) фреймворка Django, каждое из которых предоставляет:

  • административный интерфейс

Модули платформы связаны зависимостями, которые учитываются при установке конкретного модуля

Приложения на базе сервера

Для того, что бы сервер превратился в законченное коммерческое решение Вам необходимо написать на его основе собственное приложение, определяющее бизнес-логику управления доступом к данным и предоставляющее пользовательский интерфейс

Если сервер сконфигурирован как распределенное приложение, то набор Ваших приложений может быть для каждого узла своим. Такая возможность позволяет конфигурировать узел сервера под определенные задачи.

Хорошим примером может служить решение, в котором в публичной зоне находится узел с приложением “Интернет-магазин”, а в приватной - узел с приложениями “Служба тех. поддержки” и “Шлюз с товароучетной системой”. В таком решении все приложения будут в состоянии опрерировать единым набором справочных данных, документов (если они подлежат репликации) и состоянием регистров сведений сервера. Разумеется, оперировать в той мере, в которой это допускает само решение.

Распределенная работа

Сервер способен работать как в обособленном, так и в распределенном режиме. Хотя сервер не накладывает никаких ограничений, в смысле выбора механизма репликации, однако несет “из коробки” свое решение на базе сервера очередей RabbitMQ

Сервер реплицирует между узлами большую часть (но не все) справочников, документы и состояния регистров сведений, используя при этом парадигму “все узлы ведущие” (master-to-master).

Следует, однако, иметь ввиду, что если справочники и данные регистров реплицируются на все узлы и сразу же при любой модификации данных, то документы реплицируются только “по требованию” и с явным указанием получателя.

Таким образом, допустимой является ситуация, когда один из узлов, к примеру, имея информацию о состоянии товарных запасов, не имеет информации на основании каких документов этот запас формировался. Такая ситуация весьма удобна, в случае если этот узел находится в публичной зоне и служит основой для интернет-магазина.