Нагрузочное тестирование сайтов

Post on 16-Jun-2015

3.608 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

Сдавая веб-сервер в повседневную эксплуатацию, нужно быть уверенным, что он выдержит планируемую нагрузку. Как понять, что код написанный разработчиками выдержит запланированный наплыв посетителей? И что важнее, как понять какой при этом будет запас мощности?Необходимо провести тест производительности сайта, чтобы выявить потенциально узкие места и наметить планы по их рефакторингу. Рассмотрим методологию тестирования.

TRANSCRIPT

Особенности тестирования Особенности тестирования веб-сайтов и системвеб-сайтов и систем,,

работающих под высокой работающих под высокой нагрузкойнагрузкой

Модули тестированияМодули тестирования

Тест производительности

Нагрузочный тест(load-test)

Тест устойчивости(stress-test)

Объемный тестбазы данных

Этапы тестированияЭтапы тестирования

Разработка моделей нагрузок и Разработка моделей нагрузок и проектирование тестовых сценариев. проектирование тестовых сценариев.

Разработка и отладка тестовых Разработка и отладка тестовых скриптов. скриптов.

Подготовка тестового набора базы Подготовка тестового набора базы данных.данных.

Организация и проведение нагрузочных Организация и проведение нагрузочных тестов.тестов.

Проведение анализа результатов Проведение анализа результатов тестирования.тестирования.

Простое тестированиеПростое тестирование

Клиент

Веб-сервер

Распределенное Распределенное тестированиетестирование

Хост-компьютер

Клиент 1 Клиент 2 … Клиент N

Веб-сервер

Результаты, отчеты, Результаты, отчеты, графикиграфики

- время загрузки страниц- время загрузки страниц - время построения страниц- время построения страниц - загрузка процессора- загрузка процессора - количество обработанных - количество обработанных

запросов в единицу времени запросов в единицу времени - процент ошибок- процент ошибок

ЗаключениеЗаключение Наиболее эффективными при тестировании Наиболее эффективными при тестировании

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

Перейдем к практикеПерейдем к практике

Локальные системы:Локальные системы: ApacheBenchApacheBench WAPT HP LoadRunner – – страшный зверьстрашный зверь

Онлайновые системыОнлайновые системы:: Load ImpactLoad Impact   LoadStormLoadStorm BrowserMob

ApacheBenchApacheBench$ $ ab -c 100 -t 30 -n 10000 -k ab -c 100 -t 30 -n 10000 -k http://neulexa.com/

Concurrency Level: 100Concurrency Level: 100Time taken for tests: 30.033 secondsTime taken for tests: 30.033 secondsComplete requests: 6912Complete requests: 6912Failed requests: 0Failed requests: 0Write errors: 0Write errors: 0Keep-Alive requests: 0Keep-Alive requests: 0Total transferred: 5840304 bytesTotal transferred: 5840304 bytesHTML transferred: 4018240 bytesHTML transferred: 4018240 bytesRequests per second: 230.14 [#/sec] (mean)Requests per second: 230.14 [#/sec] (mean)Time per request: 434.511 [ms] (mean)Time per request: 434.511 [ms] (mean)Time per request: 4.345 [ms] (mean, across all concurrent requests)Time per request: 4.345 [ms] (mean, across all concurrent requests)Transfer rate: 189.90 [Kbytes/sec] receivedTransfer rate: 189.90 [Kbytes/sec] received

Connection Times (ms)Connection Times (ms) min mean[+/-sd] median maxmin mean[+/-sd] median maxConnect: 136 188 200.4 175 3579Connect: 136 188 200.4 175 3579Processing: 137 242 171.6 200 5425Processing: 137 242 171.6 200 5425Waiting: 137 218 162.1 175 5399Waiting: 137 218 162.1 175 5399Total: 274 431 267.6 376 5602Total: 274 431 267.6 376 5602

Percentage of the requests served within a certain time (ms)Percentage of the requests served within a certain time (ms) 50% 37650% 376 66% 39966% 399 75% 40375% 403 80% 42380% 423 90% 55290% 552 95% 74695% 746 98% 94898% 948 99% 117399% 1173 100% 5602 (longest request)100% 5602 (longest request)

WAPTWAPT

HP LoadRunnerHP LoadRunner

HP LoadRunnerHP LoadRunner

WAPTWAPT - цены - цены

LoadImpactLoadImpact

LoadImpactLoadImpact

LoadImpactLoadImpact

Более детальные настройкиБолее детальные настройки

доступны после регистрациидоступны после регистрации

LoadImpactLoadImpact - - результатырезультаты

LoadImpactLoadImpact - - результатырезультаты

LoadStormLoadStorm

LoadStormLoadStorm

LoadStormLoadStormНастройки теста

LoadStormLoadStorm

BrowserMobBrowserMob

BrowserMobBrowserMob

BrowserMobBrowserMob

BrowserMobBrowserMob

BrowserMobBrowserMob

BrowserMobBrowserMob

BrowserMobBrowserMob

ЦеныЦены

СсылкиСсылки

http://ashirobokov.blogspot.com/ - - ППрактические вопросы рактические вопросы нагрузочного тестированиянагрузочного тестирования

http://://habrahabrhabrahabr..ruru//blogsblogs//hihi/77593//77593/ - - Нагрузочное тестирование «по-Нагрузочное тестирование «по-быстренькому»быстренькому»

top related