Linux siege параметры запуска
Инструмент для тестирования давления в веб-сервисе: установка и использование осады
Siege
Существует множество инструментов для тестирования производительности веб-сервера, таких как ab, siege и т. Д. Для тестирования производительности команда использует инструменты тестирования осады.
введение
Siege в основном имеет три режима работы: регрессия, интернет-симуляция и насилие. Он может читать большое количество URL-адресов из файла конфигурации и запускать их один за другим (регрессия) или случайным образом (интернет-симуляция), или пользователь может просто нажать на один URL-адрес с помощью командной строки в командной строке
устанавливать
- Установка пакета установки
- Командная строка
Проверьте, успешна ли установка:
Введение параметра
вызов
Когда служба запущена, вы можете проверить звонок:
Повторный тест по одному адресу:
Проверка файла: несколько адресов доступа, подготовленных в файле, вы можете выбрать проверку по одному или случайный тест, покусывая управление:
Введение параметра результата
-c 25 : 25 пользователей симуляции, -r 10 : Количество запросов на пользователя;
Transactions : Количество запросов, полученных сервером;
Elapsed time : Общее время, затраченное на весь этап тестирования;
Data transferred : Сумма переданного размера данных каждого моделируемого пользователя;
Response time : Среднее время, затрачиваемое на каждый запрос;
Transaction rate : Количество запросов, которые сервер может обработать в секунду;
Throughput : Количество байтов, передаваемых сервером в секунду;
Concurrency : Среднее количество одновременных подключений;
Successful transactions : Количество успешных подключений;
Failed transactions : Количество неудачных подключений;
Longest transactions : Самое длинное время запроса;
Shortest transactions : Самое короткое время запроса;
Эффект локального теста в порядке, конкретный онлайн-эффект неизвестен, и вам нужно знать онлайн-эксперимент.
Знание того, сколько трафика может обрабатывать ваш веб-сервер в условиях стресса, важно для планирования будущего роста вашего сайта или приложения.
Используя инструмент под названием siege, вы можете запустить нагрузочный тест на вашем сервере и посмотреть, как ваша система работает в различных условиях.
Вы можете использовать siege, чтобы оценить объем передаваемых данных, время отклика, скорость транзакции, пропускную способность, параллелизм и сколько раз сервер возвращал ответы.
Важно: Siege следует запускать только на принадлежащих вам серверах или на тех, у вас есть явное разрешение на тестирование. В некоторых странах использование siege на несанкционированных сайтах может считаться преступлением.
Siege является мультиплатформенным и может быть установлен в дистрибутивах Ubuntu / Debian и CentOS / RHEL с помощью следующих команд.
Чтобы установить Siege в Debin / Ubuntu, вы можете запустить:
Для CentOS / RHEL вам необходимо установить и включить репозиторий для установки:
Кроме того, вы можете собрать siege из исходника.
Для этого вам понадобятся установленные пакеты для сборки и разработки.
Затем вы можете скачать Siege с помощью команды wget и установить из исходников, как показано далее:
После завершения установки вы можете настроить файл конфигурации осады.
Он находится в /etc/siege/siegerc.
Если вы решили собрать пакет из исходного кода, вам нужно будет выполнить:
Это сгенерирует файл siege.conf, расположенный в домашней папке вашего пользователя
Содержимое файла должно выглядеть примерно так.
Обратите внимание, что я раскомментировал директивы logfile и time:
В текущей конфигурации siege будет имитировать 25 одновременно работающих пользователей в течение 1 минуты.
Теперь вы готовы к запуску siege.
Тестирование загрузки сайта с помощью Siege Benchmarking Utility
Выполнить siege довольно просто, вам нужно только указать веб-сайт, который вы хотите проверить, следующим образом:
Если доступность остается на уровне 100%, и нет ошибок подключения, значит, ваша система работала хорошо, и проблем не было.
Вы также должны следить за временем отклика.
Запустить Siege на несколько веб-сайтов
Вы можете проверить несколько URL-адресов, вы можете описать URL в /usr/local/etc/urls.txt следующим образом:
Теперь, чтобы сказать siege проверить URL-адреса из файла, используйте параметр -f, например:
Вы также можете использовать параметры командной строки, если вы хотите попробовать настройки, отличные от описанных в файле конфигурации.
Заключение
Он может быть использован веб-разработчиками для проверки своего кода, когда сайт находится под тестированием.
Вы должны всегда выполнять свои тесты с осторожностью, поскольку тестируемый сервер может стать недоступным во время оценки.
Siege — это утилита для регрессионного тестирования и тестирования производительности с открытым исходным кодом, используемая для стресс-тестирования URL-адреса веб-сайта с несколькими смоделированными пользователями, открывающими веб-сайт. Разработчики могут проверить производительность своего кода с помощью Siege. Он работает, обращаясь к веб-серверу одновременно с множеством одновременных пользователей. Эти пользователи подвергают веб-сервер нагрузке на настраиваемый период или до тех пор, пока пользователь не прервет запуск программы Siege вручную.
Что мы будем освещать?
В сегодняшнем руководстве мы узнаем об инструменте тестирования Siege. Мы увидим, как установить и использовать его с Ubuntu 20.04. Давайте быстро изучим базовый обзор Siege.
Внимание : прочтите примечание ниже, прежде чем пытаться запустить это руководство в реальной жизни:7:34
«Следует отметить, что Siege — это стрессовый инструмент, поскольку он создает большую нагрузку на сервер, на который он нацелен; следовательно, вы не должны использовать его против любого веб-сайта или сервера без разрешения владельца. Если вы сделаете это, вы можете столкнуться с проблемами, поскольку незаконно атаковали третий веб-сайт или сервер без их согласия ».
Показатели эффективности Siege
Критические показатели производительности для анализа, предоставляемые инструментом сравнительного анализа Siege, можно в общих чертах классифицировать следующим образом:
Доступность : показывает процент подключений сокетов, которые сервер успешно обработал. Он рассчитывается путем деления количества сбоев сокетов (включая тайм-ауты) на общее количество всех запросов на подключение. Результат не включает ошибки сервера диапазона 400 и 500, включенные в «Неудачные транзакции».
Время отклика : это среднее время, необходимое для ответа на запросы каждого смоделированного пользователя.
Скорость транзакций : это среднее количество транзакций, которые сервер может обработать в течение секунды или транзакций, деленное на общее пройденное время.
Пропускная способность : определяется как среднее количество байтов, передаваемых сервером в секунду каждому смоделированному пользователю.
Успешные транзакции : это количество раз, когда сервер подтверждался с кодом возврата меньше 400.
Неудачные транзакции : это количество раз, когда сервер подтверждался с кодом возврата больше или равным 400, включая все неудачные транзакции сокета с тайм-аутом сокета.
Истекшее время : это время, в течение которого инструмент Siege запускает тест. Он рассчитывается с момента начала осады до того, как смоделированный пользователь завершит свои транзакции.
Передано данных : общий объем данных, переданных каждому смоделированному пользователю осадного теста. Он содержит информацию заголовка и содержимое пакета данных.
Параллелизм : это среднее количество одновременных подключений. Он увеличивается при снижении производительности сервера.
Самая длинная транзакция : это наибольшее время, которое может занять одна транзакция из всех транзакций.
Самая короткая транзакция : это самое короткое время, которое может занять одна транзакция из всех транзакций.
Установка Siege в Ubuntu 20.04
1. Чтобы установить Siege в вашей системе, сначала обновите списки репозиториев:
2. Теперь установите Siege из репозитория Ubuntu по умолчанию, используя:
3. Чтобы проверить установленную версию Siege, воспользуйтесь командой:
Использование Siege
Синтаксис использования siege:
- siege [options]
- siege [options] [url]
- siege -g [url]
Siege имеет множество параметров командной строки, как показано в таблице ниже:
Экспериментальная установка
Давайте развернем веб-сервер Apache на одной из машин (с IP-адресом 192.168.42.216) и запустим для него осадный тест с другой машины.
1. Проще говоря, мы можем запустить тест Siege на веб-сервере, просто используя IP-адрес сервера или его доменное имя. Он запустит тест с конфигурацией по умолчанию, как показано ниже:
2. Чтобы запустить тест в течение 40 секунд, используйте следующий формат:
3. Чтобы запустить тест для 30 одновременных пользователей, используйте следующий формат:
4. Чтобы запустить тест в течение 40 секунд и 30 одновременных пользователей, используйте следующий формат:
Заключение
В этом руководстве мы узнали об установке и использовании инструмента тестирования Siege. Попробуйте изучить больше возможностей с Siege, используя различные варианты.
ab является частью пакета Apache и дополнительно устанавливать утилиту не нужно. В качестве основного аргумента передается url к файлу с расширением .html или .php. При помощи ключа -n задается количество последовательных запросов, которые необходимо выполнить.
На выходе имеем примерно следующие результаты:
В первой строке указано, что одновременно был выполнен только один запрос. В условиях продакшена такая ситуация маловероятна, поэтому утилиту лучше запускать также с ключом -c, определяющим количество клиентов одновременно выполняющих запрос к скрипту или странице и с ключом -k, определяющим необходимость симуляции keepalive соединений (актуально для php скриптов).
Тысячу обращений от тысячи клиентов параллельно выдержит далеко не каждая инсталяция веб-сервера, но уменьшая значение параметров можно найти максимальную возможную нагрузку.
Использование Siege при нагрузочном тестировании
Siege является отдельной утилитой в отличие от ab. Количество обращений к url также можно задавать передавая в команде ключ со значением.
После установки нужно выполнить команду, которая создаст в домашнем каталоге пользователя конфигурационный файл .siegerc, его в дальнейшем можно редактировать
New configuration template added to /home/admin/.siegerc
Run siege -C to view the current settings in that file
Часто применяемые опции и флаги Siege:
Многие опции можно задать в файле .siegerc, который был сгенерирован сразу после установки пакета.
Список адресов, к которым будет обращаться утилита нужно задать в
/etc/urls.txt, также можно использовать флаг -f и передать путь к файлу с адресами в виде -f /home/list.txt
Команда запуска тестирования в общем случае может выглядеть так:
siege -v -d2 -c 100 -i -t3600S -f /home/list.txt
Нагрузочное тестирование сервера при помощи siege дает наиболее близкие к реальным результаты, но полностью доверять им нельзя поскольку поведение пользователей утилитой все таки не симулируется, симулируются только запросы, что не уменьшает ценности этого и других подобных инструментов. С их помощью можно подобрать максимально устойчивую архитектуру для оптимальной работы проекта.
Читайте также: