Сколько пользователей может поддерживать небольшая веб-роль Windows Azure? - PullRequest
3 голосов
/ 10 ноября 2010

Мы создаем простой веб-сайт, но с большим количеством логинов (около 25000 одновременно работающих пользователей).Как я могу рассчитать нет.экземпляров, необходимых для его поддержки?

Ответы [ 4 ]

8 голосов
/ 11 ноября 2010

Нагрузочное тестирование и тестирование производительности - это действительно единственный способ выяснить метрики производительности и требования к экземплярам вашего приложения.Вам нужно будет определить «одновременных пользователей» - это означает 25 000 одновременных транзакций или просто 25 000 активных сеансов?И если последнее, как часто пользователь посещает веб-страницы (например, время обдумывания между страницами)?Кроме того, есть все остальные движущиеся части: базы данных, хранилище Azure, внешние веб-сервисы, обмен внутри ролями и т. Д. Все эти шаги в конвейере обработки могут быть узким местом.

Не забывайте SLA: Предполагая, чтоВы МОЖЕТЕ поддерживать 25 000 одновременных сессий (не транзакций в секунду). Какое приемлемое время приема-передачи?Две секунды?Пять?

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

У вас должен быть способ выполнения эмпирических тестов, которые можно повторять и удалять ошибки в крайнем случае (например: запускать тесты минимум 3 раза, чтобы получитьсреднее значение и методическое увеличение нагрузки в четко определенном порядке и наблюдение за результатами, находящимися под этой нагрузкой, в течение заданного промежутка времени для обеспечения хаотического поведения добавления нагрузки для стабилизации).Это эмпирическое тестирование включает в себя тщательно разработанные планы тестирования (например, какие страницы будут посещать пользователи для заданных сценариев использования, включая возможные данные формы).И вам понадобятся соответствующие инструменты для мониторинга тестируемых систем, чтобы определить, когда данная нагрузка создает «колено в кривой» (то есть вы попали в узкое место, и ваша производительность резко падает).

Заключительная мысль: Убедитесь, что ваш инструмент для создания нагрузки не является узким местом во время теста!Возможно, вы захотите использовать решение Microsoft для нагрузочного тестирования с Visual Studio или облачное решение для нагрузочного тестирования, такое как Loadstorm (заявление об отказе: Loadstorm опрашивал меня о нагрузке / производительноститестирование в прошлом году, но я не работаю на них в любом качестве).

РЕДАКТИРОВАТЬ 21 июня 2013 г. Объявленный на TechEd 2013, Team Foundation Service предложит облачное нагрузочное тестирование.с предварительным просмотром, запущенным 26 июня, совпавшим с конференцией // build.Объявление здесь .

2 голосов
/ 10 ноября 2010

Никто не может ответить на этот вопрос без гораздо большей информации ... например, какую технологию вы используете для создания веб-сайта, что происходит при загрузке страницы, какое внутреннее хранилище используется (если есть) и т. Д. Это может будь то, что для каждого пользователя, который входит в систему, вы вычисляете миллион цифр числа Пи, или может быть, что для каждого пользователя вы обслуживаете статический контент из кэша.

Лучший совет, который я имею, - протестировать ваше приложение (в облаке или на аналогичном оборудовании) и посмотреть, как оно работает.

1 голос
/ 10 ноября 2010

Все зависит от архитектуры, технологии сохранения и количества операций чтения / записи, которые вы выполняете в секунду (среднее / максимальное).

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

0 голосов
/ 05 декабря 2010

Я недавно был на Cloud Summit, и было несколько тематических исследований.То, что мне запомнилось, это приложение для экзамена.он загружен около 80000 пользователей за 2 часа, за что они раскручивают около 300 экземпляров.

Не зная вашего профиля нагрузки, трудно добавить больше ценности, просто имейте в виду, что одновременность и непрерывность - это не одно и то же.Помните, переполнение стека против разгрома Digg "http://twitter.com/#!/spolsky/status/27244766467"?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...