Допустим, у вас есть сервер Amazon EC2. На что следует использовать меньше ресурсов:
200 сайтов ....
Этот вопрос просто сфокусирован на этих двух факторах. Больше ничего не применялось.
Спасибо за вашу помощь
Вы размещаете эти 200 сайтов для других частных лиц? Не могли бы вы рассказать нам подробнее о том, чем вы занимаетесь? Сначала я бы меньше беспокоился о ресурсах в этом случае и больше о разделении ответственности и административных накладных расходов.
Одна вещь, о которой следует подумать, заключается в том, что базы данных SQL Express ограничены размером данных 10 ГБ, так что это может быть вашим определяющим фактором прямо здесь. Если ваша единственная база данных выходит за рамки этого, вы в значительной степени страдаете.
Подробнее об особенностях редакции SQL Server Вот.
РЕДАКТИРОВАТЬ:
С 200 базами данных потенциально размером 1 ГБ вам будет лучше использовать Standard, но я бы также подумал об использовании отдельных баз данных там. Express имеет ограничение в 1 ГБ памяти, в то время как Standard ограничено только ОС хоста, что дает вам возможность гораздо больше памяти для использования SQL. Что касается того, что использует меньше памяти, трудно сказать, что вы не знаете архитектуру ваших данных. В этой единой базе данных будет ли у вас 200 копий каждой таблицы или хранить данные для всех 200 сайтов в одной копии таблиц? Там вы увидите различия в размерах индексов, которые могут повлиять на потребление памяти. SQL попытается загрузить как можно больше вашей базы данных в память, насколько это возможно и разрешено конфигурацией.
JohnThePro также делает хорошие замечания по поводу других функций, доступных в Standard, которые Express не поддерживает.
Я считаю, что одна база данных позволит более эффективно использовать память, чем 200 баз данных. Такие вещи, как планы запросов, будут для каждой базы данных, поэтому, если каждый сайт будет обращаться к своей собственной базе данных с использованием одного и того же запроса, ему придется создавать этот план хотя бы один раз для каждого из них. Кэш планов, вероятно, также ограничен, поэтому сенарио для нескольких баз данных сократит полезное пространство. Для одной базы данных с таблицами, в которых есть информация обо всех сайтах, план запроса будет сгенерирован только один раз, а многие другие будут помещены в кеш.
Если бы вы знали, что все базы данных сайта вместе не вырастут выше 4 ГБ (или захотят обновиться в этот момент), вы могли бы создать один экземпляр Sql express с 1 дБ.
Если можете, выберите стандартную версию. Существуют не только ограничения на размер БД, но и другие факторы, такие как моментальные снимки транзакций.
Express отлично подходит для тестирования и разработки, но когда вы начнете работать, я рекомендую стандартную версию.
Ознакомьтесь с более подробным сравнением функций Вот.
Команда SQL Express выпустила следующее руководство относительно мультитенантного хостинга, см. SQL Server Express и хостинг:
Общий хостинг: SQL Server Express Edition НЕ РЕКОМЕНДУЕТСЯ для общего (мультитенантного) хостинга, поскольку ограничения масштаба и обработка памяти не позволяют ему соответствовать требованиям такой среды. SQL Server Standard Edition или Enterprise Edition - лучший выбор для виртуального хостинга.
Выделенный хостинг: все версии SQL Server, включая Express Edition, РЕКОМЕНДУЮТСЯ для выделенных (однопользовательских) сред хостинга. SQL Server Express Edition - отличный способ предоставить бесплатную копию SQL Server с недорогими предложениями Windows Server.
Ваш сценарий попадет в случай общего хостинга, таким образом, не рекомендуется для экспресс.
Вы говорите о запуске 200 экземпляров SQL Express, каждый с 1 базой данных, против 1 экземпляра SQL Server Standard с 200 базами данных?
SQL Server Express в своей основе использует тот же механизм, что и версии продукта более высокого уровня. Вы можете запустить 200 баз данных с SQL Server Express. Затем, если вы столкнетесь с узкими местами в производительности из-за технических ограничений Express ... выполните обновление до Standard.