Назад | Перейти на главную страницу

Рекомендуемая установка Amazon AWS для приложения MVCv1?

Какая оптимальная настройка производительности для размещения приложения ASP.NET MVCv1?

В настоящее время у меня запущено 2 микроэкземпляра, один для обслуживания базы данных, а другой - для обслуживания самого приложения MVC.

Сервер приложений - это 32-разрядная версия Windows Server 2k8, IIS 7.5. Сервер базы данных - это 32-разрядная версия Windows 2008 Datacenter, Sql Express.

Не более нескольких (менее 10) пользователей одновременно, и, глядя на мониторинг AWS, ЦП базы данных иногда достигает 100% использования, но ЦП сервера приложений работает на 100% почти в половине случаев. Как вы могли догадаться, это снижает производительность пользователей.

Как лучше настроить сервер / экземпляр, учитывая стоимость?

Спасибо за вашу помощь.

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

(отказ от ответственности, я соучредитель AppHarbor)

Микроэкземпляр - хрень для установки базы данных. Микроэкземпляры имеют что-то около 600 мегабайт оперативной памяти, чего едва хватает для запуска Windows 2008, а тем более для запуска базы данных под ней. Вам понадобится экземпляр, который имеет как минимум пару гигабайт оперативной памяти, чтобы на сервере было достаточно памяти для SQL-сервера, чтобы фактически получить некоторую память.

Если после внесения этого изменения ЦП на SQL Server по-прежнему загружает 100%, вам нужно искать индексы, которые необходимо добавить, или плохо написанные запросы для выявления проблем.

Эти экземпляры Micro, безусловно, дешевы, но они не для ресурсоемких рабочих нагрузок, таких как ваш сервер приложений. «Маленькие» экземпляры имеют выделенный ЦП, в отличие от микропроцессоров, поэтому 100% -ный запуск означает, что вы с большей вероятностью получите больше циклов ЦП с небольшим.

Следующим шагом будет среда с высокой загрузкой ЦП. Дороже, чем «маленький», но со значительно большей мощностью процессора.