2016-07-22 2 views
1

Хотелось бы узнать, как протестировать веб-сервис с одним миллионом активных пользователей, одновременно получая доступ к сайту.Как протестировать веб-сервис с количеством пользователей до 1 миллиона?

Это теоретически. У меня нет такого веб-сервиса, как недавно, но было reading this article on how to build a scalable app for > 500K users, и мне стало интересно, как люди это проверили бы?

В целях обсуждения давайте предположим, что я полностью контролирую службу и имею 1 миллион тестовых учетных записей, уже созданных с именами пользователей test1 ->test1000000. Я бы предпочел, чтобы учетные записи обращались к моему сервису из мест по всему миру, но я открыт для любых предложений!

EDIT: Я знаком с JMeter и Selenium, но был обеспокоен мыслью, что, возможно, активность клиента, если все выполняются из одного места, будет узким местом локальной сети и, следовательно, не является отличным тестом? Поэтому вместо того, чтобы сказать 10 клиентов JMeter в разных местах, где работают клиенты 100K, я думал, что было бы лучше иметь 1000 клиентов JMeter, которые тестировали бы 1000 пользователей каждый, из разных мест ... но, возможно, это не очень беспокоит ?

+1

http://locust.io/ http://jmeter.apache.org/usermanual/remote-test.html – dm03514

ответ

1

Я думаю, что на высоком уровне могут быть испытательные узлы, распределенные по всему миру. Каждый из них будет содержать логику аутентификации и выполнения определенного типа транзакций. Блоки тестовых учетных записей могут быть распределены по каждому узлу, и каждый узел будет запускать тесты параллельно.

На практическом уровне я бы начать, глядя на рамки locust.io утверждает, что делает это в его слогана :)

http://locust.io/

1

Вы можете использовать apache jmeter или моего личного предпочтения siege

В случае осады я бы подумал о создании файла urls.txt с миллионом URL-адресов, представляющих вызов пользователя и выполняющий их одновременно.

Что касается вашей заботы о местах Blazemeter имеет нагрузочное тестирование гео-распределенных слишком

1

Вы посмотрите на Цзун инструмент может http://tsung.erlang-projects.org/ Это действительно легкий вес и позволяет запускать сотни из тысяч виртуальных пользователей средняя машина (зависит от сложности скрипта).

0

В то время как вы не можете делать многоступенчатую автоматизацию на этих сайтах, следующие службы позволят вам ударить URL-адрес из разных мест клиента (например, в Азии, Северной Америке, Австралии) и уменьшить пропускную способность, если вы хотите в целях тестирования :

WebPagetest - https://www.webpagetest.org/ - от их о странице: «WebPagetest является проектом с открытым исходным кодом, который в первую очередь разрабатывается и поддерживается Google в рамках наших усилий, чтобы сделать в Интернете быстрее.» На этом сайте также есть api, is opensource и позволяет автоматизировать его через узел api и cli.

Pingdom https://tools.pingdom.com/

Более подробную информацию в this blogpost from KeyCDN

Смежные вопросы