Добрый день.
В обсуждениях уже поднимался вопрос про
организацию работы облачной CMS, но он касался частностей: распределения нагрузки по серверам.
Если есть готовый велосипед, просьба подсказать, если нет, просьба помочь. Отвечая на сразу возникший вопрос "зачем", скажу: это узкопрофильная предметная область, поэтому совершенно разные направления с уже имеющимися облачными ЦМС.
1) ФАЙЛОВАЯ СТРУКТУРА
Нужно ли копировать полностью файловую структуру?
Из различий между сайтами могут быть только в файлах шаблонов ну и пользовательские загруженные данные.
/templates/
......./site1.ru/
......./siteX.ru/
/uploads/
......./site1.ru/
......./siteX.ru/
Т.е. посетитель, введя зарегистрированный домен в системе, всегда попадает на один и тот же движок.
В зависимости от домена загружается требуемая база данных.
Или это в корне не правильно и будет сильный перегруз единственного index.php для множества сайтов?
2) ДОМЕНЫ
По-умолчанию, создается поддомен с логином (login.server1.myapp.ru), после пользователь может привязать домен второго уровня.
a) Если "движок" всегда один, правильно ли я понимаю, что просто создаются псевдонимы домена myapp.ru -> (client1.ru, clientX.ru).
Как это можно автоматизировать через самописный backend?
б) Если происходит копирование файлов, то фактически у нас подобие виртуального хостинга?
Как это можно автоматизировать через самописный backend?
3) ДИСКОВЫЕ КВОТЫ (quota)
Правильно ли я понимаю, что 'quota' возможно только если будет подобие виртуального хостинга?
Если использовать один движок, то придется после загрузки каждого файла на клиентский сайт проверять не превышен ли лимит.
4) МАСШТАБИРУЕМОСТЬ
Load Balancer и применимость к данной архитектуре...вообще темный лес.
В процессе ответов думаю будет еще более вопросов, заранее спасибо.