Я размышлял над правильным/оптимальным способом создания приложения на основе многоуровневых приложений на Django.
Некоторое объяснение:
-
Приложение может использоваться несколькими арендаторами (tenant1, tenant2,...,).
-
Все индивидуальные данные арендатора должны быть защищены от доступа других арендаторов (и их пользователей).
-
При желании арендаторы могут создавать дополнительные пользовательские поля для объектов-приложений.
-
Конечно, базовое оборудование ограничивает количество арендаторов на одной "системе".
1) Разделение каждого арендатора, например. поддомена и использования баз данных, специфичных для арендаторов, в нижележащем слое
2) Использование некоторого идентификатора арендатора в модели для разделения данных арендатора в базе данных
Я думаю о процессах развертывания, производительности системных частей (веб-сервер (ы), сервер базы данных, рабочие node (s),...)
Какая была бы лучшая настройка? Где про и кон?
Как вы думаете?