Re: Люди, помогите с tsung.

179 views
Skip to first unread message

Alexandre Beniaminov

unread,
Aug 27, 2012, 4:00:54 AM8/27/12
to erlang-...@googlegroups.com

A.8  How can I specify the number of concurrent users ?

You can’t. But it’s on purpose: the load generated by Tsung is dependent on the arrival time between new clients. Indeed, once a client has finished his session in tsung, it stops. So the number of concurrent users is a function of the arrival rate and the mean session duration.

For example, if your web site has 1000 visits/hour, the arrival rate is 1000/3600 = 0.2778 visits/second. If you want to simulate the same load, set the inter-arrival time is to 1/0.27778 = 3.6 sec (<users interarrival="3.6" unit="second"> in the arrivalphase node in the XML config file).


27 августа 2012 г., 11:31 пользователь leninlin <leni...@gmail.com> написал:
Я сам только начинаю изучать erlang, поэтому сам справится со своей задачей не могу.
Я использую tsung для нагрузочного тестирования нашего веб продукта. Мне надо как-то сделать так что бы нагрузка была равномерной. В конфиге цунга устанавливается максимальное колличество пользователей на интервал времени, а мне надо чтоб он умел удерживать определенное колличество одновременно подключенных пользователей. Т.е. подключил например 5 пользователей, один отработал и отключился, и вместо него сразу новый подключается.
Кто-нибудь может помочь сделать такое или как настроить конфиг, если это уже реализовано?

--
--
Страница рассылки: http://groups.google.com/group/erlang-russian
Новости: http://erlanger.ru
Чат: xmpp://erl...@conference.jabber.ru
Чат для оффтопа: xmpp://erlang...@conference.jabber.ru
 
Написать письмо: erlang-...@googlegroups.com
Отписаться: erlang-russia...@googlegroups.com
 
 



--
С уважением,
Александр Бениаминов

leninlin

unread,
Aug 27, 2012, 5:32:48 AM8/27/12
to erlang-...@googlegroups.com
Расчитывать не вариант. Время отдачи страницы постоянно варьируется, поэтому есть какой-нибудь юзер запаздает, то когда подключится следующий их общее колличество станет больше, это повысит нагрузку на сервер и он начнет дольше отдавать страницу, а значит будет еще больше подключенных на момент времени и в итоге колличество пользователей начнет расти с геометрической прогрессией.
К тому же, если я знаю среднее время отдачи страницы, то зачем мне этот тест? Я тестирую не возможности сервера выдержать какое-то колличество пользователей. А мне надо как раз получить среднее время загрузки страницы при определенном колличестве одновременно подключенных пользователях и собирать эти данные на разных машинах. И если придется под каждую машину подгонять конфиг, то реально быстрее будет выучить весь erlang и переписать функционал.

понедельник, 27 августа 2012 г., 12:00:54 UTC+4 пользователь Alexandr Beniaminov написал:

A.8  How can I specify the number of concurrent users ?

You can’t. But it’s on purpose: the load generated by Tsung is dependent on the arrival time between new clients. Indeed, once a client has finished his session in tsung, it stops. So the number of concurrent users is a function of the arrival rate and the mean session duration.

For example, if your web site has 1000 visits/hour, the arrival rate is 1000/3600 = 0.2778 visits/second. If you want to simulate the same load, set the inter-arrival time is to 1/0.27778 = 3.6 sec (<users interarrival="3.6" unit="second"> in the arrivalphase node in the XML config file).


Paul Peregud

unread,
Aug 27, 2012, 6:32:22 AM8/27/12
to erlang-...@googlegroups.com
>> Я тестирую не возможности сервера выдержать какое-то колличество пользователей.

Т.е. инструмент не очень подходящий выбран. У тсунга задача - загнуть сервер.

Можете попробовать приближаться к границе экспериментальным путем.
Если во время теста случается описанный вами сценарий - значит на этой
машине уже нельзя обслуживать такое количество пользователей и число
которое вы хотите получить: "среднее время загрузки страницы при
количестве пользователей N в секунду" для данного N не определено.

2012/8/27 leninlin <leni...@gmail.com>:

Mikl Kurkov

unread,
Aug 27, 2012, 9:16:54 AM8/27/12
to erlang-...@googlegroups.com
2012/8/27 leninlin <leni...@gmail.com>
Я сам только начинаю изучать erlang, поэтому сам справится со своей задачей не могу.
Я использую tsung для нагрузочного тестирования нашего веб продукта. Мне надо как-то сделать так что бы нагрузка была равномерной. В конфиге цунга устанавливается
максимальное колличество пользователей на интервал времени, а мне надо чтоб он умел удерживать определенное колличество одновременно подключенных пользователей. Т.е. подключил например 5 пользователей, один отработал и отключился, и вместо него сразу новый подключается.
 
Можно сделать сессии очень длинными (например с помощью цикла). Тогда, подключив определенное кол-во пользователей, тсунг будет
продолжать генерировать равномерную нагрузку. Для остановки теста можно использовать опцию duration у load. Для сбора раздельной статистики
по запросам обернуть внутренности цикла в транзакцию. Есть также удобная опция loop у load -  вместе с arrivalphase/duration и users/maxnumber  легко получить постепенное наращивание нагрузки - добавляем 100 юзеров, работаем минуту, добавляем еще 100, работаем еще минуту и так далее.

--
Mikl

leninlin

unread,
Aug 28, 2012, 2:34:48 AM8/28/12
to erlang-...@googlegroups.com
Спасибо большое! очень помогло!

понедельник, 27 августа 2012 г., 17:16:54 UTC+4 пользователь Mikl Kurkov написал:
Reply all
Reply to author
Forward
0 new messages