Многопользовательский проект

У меня есть веб-сайт, который будет работать с несколькими компаниями. Мне нужен удаленный репозиторий с проектом, и я хочу иметь возможность создать отдельную копию этого проекта для каждой компании и отдельной базы данных. У каждой компании должен быть свой URL-адрес, например имя_компании.имя_сайта.com.

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

Если это важно, я использую ASP.NET для веб-сайта и SQL-сервера.


person Anastasiya    schedule 07.05.2015    source источник


Ответы (1)


Вы можете использовать TFS, если планируете использовать ASP.NET и SQL. Просто создайте отдельный филиал для каждой компании.

Вы также можете использовать SVN с таким же подходом. Создайте отдельный филиал для каждой компании.

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

Существует множество инструментов для создания репозиториев. Эти 2 самые распространенные.

person rob waminal    schedule 07.05.2015
comment
Это не совсем то, что я ищу. Вы мне предложили Системы контроля версий. При регистрации компании на моем сайте должна автоматически создаваться копия проекта и отдельная база данных. И тогда компания сможет использовать мой сайт по url имя_компании.имя_сайта.com. - person Anastasiya; 07.05.2015
comment
Я вижу, я не понял ваш вопрос. почему вам нужно создать отдельную базу данных для каждого клиента, а вместо этого просто создать таблицу для клиентов. Вам не кажется, что создание базы данных для каждого покупателя с одинаковой информацией обходится дорого? - person rob waminal; 07.05.2015
comment
Потому что, если я когда-нибудь захочу перенести компанию с одного сервера на другой, это будет очень просто. - person Anastasiya; 07.05.2015
comment
хм с моей точки зрения и опыта. работая на ASP.NET и SQL, было бы разумно и дешевле, если бы вся БД находилась на одном сервере, но чтобы ответить на ваш вопрос, я бы предложил создать сценарий вашей базы данных (таблицы, SP, sql-jobs и т. д.) и повторно создавать их, как только зарегистрируется новый клиент. Другое дело - создание поддомена. Я еще не слышал и не нашел фреймворка, который бы это делал. Но то, что я предлагаю выше, можно сделать в системе единого входа. msdn.microsoft.com/en-us/library /aa745042(v=bts.10).aspx - person rob waminal; 07.05.2015